چطور میتونم باتون های هر فرم پروژه رو لیست کنم
من می خوام یه کلاس درست کنم که باتون های هر پروژه رو پیدا کنم
؟؟؟
Printable View
چطور میتونم باتون های هر فرم پروژه رو لیست کنم
من می خوام یه کلاس درست کنم که باتون های هر پروژه رو پیدا کنم
؟؟؟
Dim Temp As String
Dim Ctr As Control
For Each Ctr In Me.Controls
If TypeName(Ctr) = "Button" Then
Temp += Ctr.Name + ControlChars.CrLf
End If
Next
MsgBox(Temp)
سلام دوست عزیز
منظورت از "چطوری می تونم باتون های هر فرم پروژه رو لیست کنم" چیه؟
سلام
خوب این کد شما رو من با یه کمی تغییر به نتیجه رسوندم انم این بو د که اگه باتون ها روی مثلاً گروپ باکس باشه این جواب نمیده اما حالا مشکل اصلی اینجاست که این در صورتی خوب که یا تو خود فرم باشی یا اسم فرم رو داشته باشی
اما من می خوام این کار رو برای کل فرم های پروژم انجام بدم یعنی چطور این جا باتون هر فرم رو پیدا می کنه حالا من قبل این باید فرم های پروژه جاریم رو پیدا کنم و بعد اونا رو تک تک توی ان حلقه ها بذارم
اونو چکار کنم؟
من می خوام کل پروژه جستجو بشه و برای هر فرم آون دکمه های اون رو برام نشون بده تا با این روش بتونم سطح دسترسی برای کاربر درست کنم
قبل از هر چیزی کد تغییر یافته رو بزار ببینم چه تغییری دادی . ما هم یاد بگیریم .
سلام
همان طور که گفتم با یه کم تغیر که خیلی جزئی بود برای همون من ایجا نذاشتم اما حالا می زارم این کد برای گروپ باکس اون هم فقط یک گروپ باکس اگه به خواهید این رو کلی کنید باید برای هر شیء کلیه زیر مجموعه های اون رو هم چک کنید که من نیاز نداشتم اینم کد:
For Each Ctr In Me.Controls
If TypeName(Ctr) = "GroupBox" Then
For Each Ctr1 In Ctr.Controls
If TypeName(Ctr1) = "Button" Then
Temp1 += Ctr1.Name + ControlChars.Lf
End If
Next
ElseIf TypeName(Ctr) = "Button" Then
Temp1 += Ctr.Name + ControlChars.CrLf
End If
Next
اما مشکل من هنوز حل نشده؟؟؟؟
فکر کنم این مشکل را حل کنه
Sub AllControl(ByVal parent As Control)
For Each ctrl As Control In parent.Controls
' MessageBox.Show(ctrl.Name)
If TypeOf ctrl Is Button Then
MessageBox.Show(ctrl.Name)
End If
If ctrl.HasChildren Then
AllControl(ctrl)
End If
Next
End Sub
AllControl(Me)