View Full Version : حرفه ای: چگونگي اضافه کردن فورم و اشياء با کد نويسي
MohammadGh2011
چهارشنبه 27 مهر 1390, 14:34 عصر
سلام عليکم
دوستان گرامي چگونه با کد نويسي ميتونم يک فورم جديدي اضافه کنم؟که وقتي برنامه اجرا شد اون فورم به نمايش در آيد.
و چگونه ميتونم با کد نويسي اشياء رو فورمم اضافه کنم؟
مانند سي شارپ
Button btn = new Button();
this.Controls.Add(btn);
ممنونم
M.T.P
چهارشنبه 27 مهر 1390, 15:58 عصر
Dim Btn As CommandButton
Set Btn = Me.Controls.Add("vb.commandbutton", "Btn")
Btn.Caption = "Hello"
Btn.Visible = True
ali682344
چهارشنبه 27 مهر 1390, 16:05 عصر
سلام
ببین این توضیحات به دردت می خوره
از این لینک
http://www.vbforums.com/showthread.php?t=342054
mr-adler
چهارشنبه 27 مهر 1390, 17:43 عصر
Dim Btn As CommandButton
Set Btn = Me.Controls.Add("vb.commandbutton", "Btn")
Btn.Caption = "Hello"
Btn.Visible = True
این کد برای اضافه کردن form ارور میده.ایا چیز دیگه ای هم باید بهش اضافه بشه تا بتونیم فرم هم لود کنیم؟
M.T.P
چهارشنبه 27 مهر 1390, 18:40 عصر
این کد برای اضافه کردن form ارور میده.ایا چیز دیگه ای هم باید بهش اضافه بشه تا بتونیم فرم هم لود کنیم؟
در واقع چون فرم ها هم یک کلاس هستند برای فرم میتونی یک فرم بسازی و در runtime ازش نمونه برداری کنی.
Dim FrmForm as New Form1
MMR_1344
چهارشنبه 27 مهر 1390, 19:03 عصر
برای نمایش فرم باید دستور زیر بکار رود
Set FrmForm = Me.Controls.Add("vb.Form" , "FrmForm")
mr-adler
چهارشنبه 27 مهر 1390, 19:10 عصر
در runtime ازش نمونه برداری کنی.
ما مبتدی هستیم:لبخند:چیزی دستگیرمون نشد:ناراحت:
برای نمایش فرم باید دستور زیر بکار رود
Set FrmForm = Me.Controls.Add("vb.Form" , "FrmForm")
ممنونم , از همین دستور استفاده کردم اما متاسفانه جواب نداد:ناراحت:
MohammadGh2011
چهارشنبه 27 مهر 1390, 19:49 عصر
Dim Btn As CommandButton
Set Btn = Me.Controls.Add("vb.commandbutton", "Btn")
Btn.Caption = "Hello"
Btn.Visible = True
ممنونم از جناب M.T.P
حالا چه طوري ميتونم توي اون دکمه اي که اضافه شده دستورات اضافه کنم که يک کاري رو انجام بده؟مثلا وقتي که کامند اضافه شد و رو اون کليک کرديم يه Msgbox نشون داده بشه.
بازم ممنونم
MohammadGh2011
چهارشنبه 27 مهر 1390, 19:52 عصر
سلام
ببین این توضیحات به دردت می خوره
از این لینک
http://www.vbforums.com/showthread.php?t=342054
دوست عزيز بهتر نبود به جاي اينکه يک لينک بزاري خودتون توضيح بديد؟
من قبل از اينکه تاپيک ايجاد کنم کل اينترنت رو زيرو رو ميکنم چه فوروم هاي انگليسي چه فارسي اگه به نتيجه اي نرسيدم بعد تاپيکم رو ايجاد ميکنم.به هرحال از شما دوست گرامي هم ممنونم.
MohammadGh2011
چهارشنبه 27 مهر 1390, 20:05 عصر
سلامي دوباره
دوستان عزيز تا اينجايي که فرموديد مشکلي ندارم و خيلي تلاش ميکنم ولي يه جاي کدم مشکل داره
من ميخوام يه کاري بکنم که وقتي برنامه اجرا شد يه فورم جديد به غير از فورم يک اجرا بشه؟(اضافه بشه)
ممنونم
MohammadGh2011
چهارشنبه 27 مهر 1390, 20:08 عصر
برای نمایش فرم باید دستور زیر بکار رود
Set FrmForm = Me.Controls.Add("vb.Form" , "FrmForm")
جناب MMR_1344 اين کدتون باسه چيه؟ارور ميده موقع اجرا
returnx
چهارشنبه 27 مهر 1390, 21:42 عصر
جناب MMR_1344 اين کدتون باسه چيه؟ارور ميده موقع اجرا
با اون کد نمیشه چنین کاری کرد چون Form جز کنترل ها محسوب نمیشه شما از همون روشی که جنابMTP گفتند استفاده کنید با این تفاوت که یک فرم خالی بسیازید و فرم های جدید رو از روی اون ایجاد کنید نه فرمی که توش در زمان طراحی از کنترل های خاصی استفاده کردید...
برای اینکه بتونید از دکمه هایی که ساختید بتونید استفاده کنید تا کد خاصی رو اجرا کنه شما باید کنترلتون رو با تمام رویدادهاش بسازید تا بتونید از رویداد Click استفاده کنید به این شکل:+
Dim WithEvents Com As CommandButton
بعد کافیه Sub Clcik رو براش تعریف کنید و توش کد بنویسید ، من تو سورس زیر ابتدا یک دکمه به صورت Runtime میسازم بعد با کلیک روی اون 10 تا دکمه دیگه ساخته میشه ببنید:
Dim WithEvents Com As CommandButton
Dim m_com(10) As CommandButton
Dim k As String
Private Sub Form_Load()
Set Com = Me.Controls.Add("vb.commandbutton", "my_button")
With Com
.Left = Me.Width / 2
.Top = Me.Height / 2
.Visible = True
.Caption = "YES"
End With
End Sub
Private Sub Com_Click()
For i = 1 To 10
k = k & "p"
Set m_com(i) = Me.Controls.Add("vb.commandbutton", k)
Next i
For j = 1 To 10
With m_com(j)
.Visible = True
.Caption = "hello"
.Width = 400
If j > 1 Then
.Left = m_com(j - 1).Left + m_com(j - 1).Width + 10
End If
End With
Next j
End Sub
MMR_1344
پنج شنبه 28 مهر 1390, 00:23 صبح
با عرض پوزش از دوستان اشتباه مرا ببخشید
نمیدونستم برای فرم عمل نمیکنه امتحان کردم به اشتباهم پی بردم
MohammadGh2011
پنج شنبه 28 مهر 1390, 07:16 صبح
سلا عليکم
دوستان طريقه ي اضافه کردن فورم جديد و اجراي اون رو هم ميگيد؟
ممنونم
محسن واژدی
پنج شنبه 28 مهر 1390, 23:36 عصر
سلام
از همان روشی که جناب ms2222 گفتند استفاده کنید، یعنی یک فرم خالی ایجاد کرده سپس از روی آن در هربار یک کپی در زمان اجرا ایجاد کنید
برای ایجاد کنترل در آن هم دوستان فرمودند
موفق باشید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.