PDA

View Full Version : حرفه ای: چگونگی دسترسی به رویدادهای کنترلی که با کد ایجاد شده است؟؟



sagggad
چهارشنبه 20 آذر 1392, 09:45 صبح
سلام دوستان.
من با کد زیر یه تکس باکس در برنامم ایجاد میکنم:
Dim txt1 As New TextBox
(Me.Controls.Add(txt1
حالا مشکل اینجاست که مثلا میخوام برنامه با کلیک بر روی این تکس باکس یه کاری خاصی انجام بده اما وقتی براش به شکل زیر رویداد تعریف می کنم زیر Handles txt1.MouseUp خط آبی میکشه.

Private Sub txt1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles txt1.MouseUp

End Sub
حالا از دوستان میخوام که بگن چطور باید براش رویداد تعریف کنم؟؟:متفکر::قلب:

Hossis
چهارشنبه 20 آذر 1392, 10:14 صبح
هنگام تعریف اون کنترل، withevents رو قبل از اسم اون کنترل اضافه کن
Friend WithEvents txt1 As New TextBox

damanpak
چهارشنبه 20 آذر 1392, 10:25 صبح
سلام
این رو برای نمونه گذاشتم ببین چطوره؟
Dim txt As New TextBox

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

With txt
Me.Controls.Add(txt)
.Visible = True
.Width = 150
AddHandler txt.Click, AddressOf onclick
End With

End Sub

Overloads Sub onclick(ByVal sender As Object, ByVal e As EventArgs)

txt.BackColor = Color.Yellow

End Sub

sagggad
چهارشنبه 20 آذر 1392, 10:38 صبح
ممنون از همگی!!

sagggad
چهارشنبه 20 آذر 1392, 10:39 صبح
هنگام تعریف اون کنترل، withevents رو قبل از اسم اون کنترل اضافه کن
Friend WithEvents txt1 As New TextBox

دوست عزیز هنگام تعریف زیر کلمات Friend WithEvents خط آبی میکشه.چی کارکنم؟؟

sagggad
چهارشنبه 20 آذر 1392, 10:42 صبح
سلام
این رو برای نمونه گذاشتم ببین چطوره؟
Dim txt As New TextBox

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

With txt
Me.Controls.Add(txt)
.Visible = True
.Width = 150
AddHandler txt.Click, AddressOf onclick
End With

End Sub

Overloads Sub onclick(ByVal sender As Object, ByVal e As EventArgs)

txt.BackColor = Color.Yellow

End Sub

داداش یک دنیا تشکر.فقط رویداد های دیگه رو چه طوری باید تعریف کرد؟؟

mehdi.safavie
چهارشنبه 20 آذر 1392, 10:46 صبح
درود;
ببین این کدها به دردت میخوره ؟

Dim NPic As PictureBox

Overloads Sub Lclick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
MsgBox("Hello")
End Sub

Private Sub Button1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel3.MouseClick
NPic = New PictureBox
AddHandler NPic.MouseClick, AddressOf Lclick
Me.Controls.Add(NPic)
NPic.Name = "NPic"
NPic.BringToFront
NPic.Left = e.X - 8
NPic.Top = e.Y - 12
x = NPic.Left
y = NPic.Top
NPic.Height = 50
NPic.Width = 50
NPic.BackColor = Color.Transparent
NPic.ImageLocation = "Addresse ye aks : C:\Pic.Jpg"
NPic.SizeMode = PictureBoxSizeMode.StretchImage
End Sub

sagggad
چهارشنبه 20 آذر 1392, 10:48 صبح
داداشا مشکل حل شد کدهای آقای صفوی وdamanpak (http://barnamenevis.org/member.php?161376-damanpak) خیلی کمکم کرد

sagggad
چهارشنبه 20 آذر 1392, 10:58 صبح
هنگام تعریف اون کنترل، withevents رو قبل از اسم اون کنترل اضافه کن
Friend WithEvents txt1 As New TextBox

داداش کدشما هم درست بود فقط باید به جایFriend از Dim استفاده می کردم.ممنووووووون