[
attachment=17743]
لدي مجموعة من الليبل علي الفورم واقوم بتحريكهم يمينا ويسار واعلي وأسفل
كيف يمكن تثبيتهم بعد التحريك فى المكان المناسب عن طريق زر امر
ويضل التثبيت حتى ولو اغلق الفورم وتم فتحة مرة اخري
وهكذا
قم بتحديد موضع كل ليبل وتم قم بانشاء كود بالموضع
قم بوضع مثال حتي يتسنى لنا إضافة وتعديل الاكواد
(24-04-18, 12:24 AM)السيد الجوهري كتب : [ -> ]لدي مجموعة من الليبل علي الفورم واقوم بتحريكهم يمينا ويسار واعلي وأسفل
كيف يمكن تثبيتهم بعد التحريك فى المكان المناسب عن طريق زر امر
ويضل التثبيت حتى ولو اغلق الفورم وتم فتحة مرة اخري
وهكذا
بشرح لك الطريقة على اداة ليبل ويمكنك عمل اكثر من اداة بنفس الطريقة :
ليبل باسم Label1
أولاً لابد من مكان لتخزين الاحداثيات لكل أداة حقلين توب و ليفت Left and Top ،،، والافضل نخزنها في ملف البرنامج بإضافة متغيرات للسيتينق بالطريقة التالية :
Label1Left integer
Label1Top integer
تابع الصورة التالي :
[
attachment=17752]
أما الأكواد تكتب في الحدث MouseMove ،، للوصل للحدث دبل كلك على الأداة ثم اختيار الحدث MouseMove كالتالي :
كود :
Private Sub Label1_MouseMove(sender As Object, e As MouseEventArgs) Handles Label1.MouseMove
Static mousePosX As Single, mousePosY As Single
If e.Button = 0 Then
mousePosX = e.X
mousePosY = e.Y
Else
Label1.Left = Label1.Left + (e.X - mousePosX)
Label1.Top = Label1.Top + (e.Y - mousePosY)
'حفظ احداثيات الاداة بعد تحريكها في السيتينق
My.Settings.Label1Left = Label1.Left
My.Settings.Label1Top = Label1.Top
My.Settings.Save()
End If
End Sub
الآن حفظنا مكان احداثيات الأداة الجديد بعد التحريك بقي علينا فقط عند إيقاف وتشغيل البرنامج مره اخرى نضع الأداة في مكانها بعد التحريك كالتالي في حدث الفورم لود :
كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Label1.Left = My.Settings.Label1Left
Label1.Top = My.Settings.Label1Top
End Sub