PDA

View Full Version : مبتدی: بدست آورن نام کنترلی که در فرم هم اکنون ماوس بر روی اون هست



milad.biroonvand
شنبه 08 اسفند 1388, 13:02 عصر
سلام دوستان

من یک label دارم ، حالا می خوام ماوس در فرم موقعی که حرکت می کنه ، بر روی هر کنترلی که رفت ، نامش در اون lable که دارم نشون داده بشه ، اینکار به چه صورت انجام داده میشه ؟

milad.biroonvand
شنبه 08 اسفند 1388, 13:03 عصر
سلام دوستان

من یک label دارم ، حالا می خوام ماوس در فرم موقعی که حرکت می کنه ، بر روی هر کنترلی که رفت ، نامش در اون lable که دارم نشون داده بشه ، اینکار به چه صورت انجام داده میشه ؟


بنظرم اینکار در رویداد mouse move فرم نوشته میشه .

b.mahsa
شنبه 08 اسفند 1388, 13:42 عصر
سلام
باید رو event onmousehover هر کنترل بنویسد lable1.text = "control.name

milad.biroonvand
شنبه 08 اسفند 1388, 13:46 عصر
سلام
باید رو event onmousehover هر کنترل بنویسد lable1.text = "control.name


سلام دوست عزیز

مرسی از پاسختون ، ولی کنترل های من زمان اجرا هستن .

pirmard
شنبه 08 اسفند 1388, 14:14 عصر
سلام دوست عزیز

مرسی از پاسختون ، ولی کنترل های من زمان اجرا هستن .

خوب چه ایرادی داره ؟
مگه کنترلهایی که ران تایم ساخه میشن ایونت ندارن ؟ !

b.mahsa
شنبه 08 اسفند 1388, 14:17 عصر
کد زیر رو تست کنین امیدوارم به دردتون بخوره.


private sub AddButton()
Dim b as new button()
AddHandler b.MouseHover, AddressOf test
end sub

private sub test(sender as object, e as eventargs)
msgbox("test")
end sub

Hossis
شنبه 08 اسفند 1388, 14:22 عصر
اين رو امتحان کنيد


Private Sub form_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TableLayoutPanel1.MouseMove, Me.MouseMove
Dim ctl As Control = Me.GetChildAtPoint(e.Location)
If ctl Is Nothing Then ctl = TableLayoutPanel1.GetChildAtPoint(e.Location)
If Not ctl Is Nothing Then
Me.Text = ctl.Name
End If
End Sub

milad.biroonvand
دوشنبه 10 اسفند 1388, 08:39 صبح
اين رو امتحان کنيد


PrivateSub form_MouseMove(ByVal sender AsObject, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TableLayoutPanel1.MouseMove, Me.MouseMove
Dim ctl As Control = Me.GetChildAtPoint(e.Location)
If ctl IsNothingThen ctl = TableLayoutPanel1.GetChildAtPoint(e.Location)
IfNot ctl IsNothingThen
Me.Text = ctl.Name
EndIf
EndSub



کد خوبیه ولی رو هر کنترلی که ببریش درست جواب نمی ده