تفضل اخي كتبت لك دالة تفعل ماتريده
سي شارب لإفادة الجميع :
--
وطريقة استخدام الدالة كالتالي :
PHP كود :
Public Sub ShowMiniWindow(ByRef Frm As Form)
Dim miniFrm As Form = Frm
miniFrm.Location = New Point(Screen.PrimaryScreen.Bounds.Width - miniFrm.Width, Screen.PrimaryScreen.Bounds.Height)
miniFrm.ControlBox = False
miniFrm.Text = ""
miniFrm.ShowInTaskbar = False
miniFrm.StartPosition = FormStartPosition.Manual
miniFrm.TopMost = True
miniFrm.Show()
miniFrm.Activate()
Dim TaskBarHeight As Integer = Screen.PrimaryScreen.Bounds.Height - Screen.PrimaryScreen.WorkingArea.Height
While miniFrm.Location.Y > Screen.PrimaryScreen.Bounds.Height - miniFrm.Height - TaskBarHeight
Dim speed As Integer = 1
'سرعة الانميشن'
Application.DoEvents()
miniFrm.Location = New Point(miniFrm.Location.X, miniFrm.Location.Y - speed)
End While
Dim hideTimer As New System.Windows.Forms.Timer()
hideTimer.Interval = 5000
'الوقت المطلوب لإختفاء الفورم'
hideTimer.Start()
AddHandler hideTimer.Tick, Sub()
While miniFrm.Location.Y < Screen.PrimaryScreen.Bounds.Height
Dim speed As Integer = 1
'سرعة الانميشن'
Application.DoEvents()
miniFrm.Location = New Point(miniFrm.Location.X, miniFrm.Location.Y + speed)
End While
miniFrm.Dispose()
hideTimer.[Stop]()
End Sub
End Sub
سي شارب لإفادة الجميع :
PHP كود :
public void ShowMiniWindow(Form frm)
{
#region FormProperties
Form miniFrm = frm;
miniFrm.Location = new Point(Screen.PrimaryScreen.Bounds.Width - miniFrm.Width, Screen.PrimaryScreen.Bounds.Height);
miniFrm.ControlBox = false;
miniFrm.Text = "";
miniFrm.StartPosition = FormStartPosition.Manual;
miniFrm.TopMost = true;
miniFrm.Show();
miniFrm.Activate();
#endregion
#region AnimateMiniFormToUP
int TaskBarHeight = Screen.PrimaryScreen.Bounds.Height - Screen.PrimaryScreen.WorkingArea.Height;
while (miniFrm.Location.Y > Screen.PrimaryScreen.Bounds.Height - miniFrm.Height - TaskBarHeight)
{
int speed = 1; //سرعة الانميشن
Application.DoEvents();
miniFrm.Location = new Point(miniFrm.Location.X, miniFrm.Location.Y - speed);
}
#endregion
#region "AnimateMiniFormToDOWN"
System.Windows.Forms.Timer hideTimer = new System.Windows.Forms.Timer();
hideTimer.Interval = 5000; //الوقت المطلوب لإختفاء الفورم
hideTimer.Start();
hideTimer.Tick +=new EventHandler(delegate
{
while (miniFrm.Location.Y < Screen.PrimaryScreen.Bounds.Height)
{
int speed = 1; //سرعة الانميشن
Application.DoEvents();
miniFrm.Location = new Point(miniFrm.Location.X, miniFrm.Location.Y + speed);
}
miniFrm.Dispose();
hideTimer.Stop();
});
#endregion
}
--
وطريقة استخدام الدالة كالتالي :
PHP كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim frm As New Form() 'تقدر تمحي هذا الكود وتخلي بدالة اي فورم تعجبك'
frm.Size = New Size(310, 168) 'تقدر تمحي هذا الكود وتخلي اي فورم يعجبك'
ShowMiniWindow(frm) 'مثلا تقدر تخلي فورم 2
"ShowMiniWindow(New Form2()) مثلا لو كان عندنا فورم جاهز"
End Sub

