PDA

View Full Version : مشکل این کد کجاست؟



User SA
شنبه 03 مهر 1395, 08:14 صبح
سلام
نتیجه اجرای این کد مگه نباید این بشه؟
9 عدد picture box رو به ترتیب در سه خط و با top و left مشخص تولید کنه(دقیقا مثل image box هایی که گذاشته شده) اما top و left ها درست نیست!
مشکلش کجاست؟

142733

این کدی که من نوشتم:

Dim Pic As Integer
Dim Jadval As Integer
Dim XTop As Double
Dim XLeft As Double
XTop = 0
XLeft = 4880
For Pic = 1 To 9
Load PictureBox(Pic)
With PictureBox(Pic)
.Visible = True
For Jadval = 1 To 3
.Top = XTop
.Left = XLeft
XLeft = XLeft - 2160
Next Jadval
XLeft = 4880
XTop = XTop + 2880
End With
Next Pic

اینم خود پروژه:
142734

لطفا اساتید راهنمایی کنن
سپاس

User SA
شنبه 03 مهر 1395, 18:44 عصر
دوستان لطفا راهنمایی کنین!!

Fery666
شنبه 03 مهر 1395, 21:55 عصر
سلام دوست عزیز .
منظور شما این حالتی باید بشه ؟؟؟

142751

User SA
شنبه 03 مهر 1395, 23:36 عصر
سلام دوست عزیز ممنونم از پاسختون
بله دقیقا

Fery666
یک شنبه 04 مهر 1395, 12:31 عصر
اینم کد آماده .

لازم نبود اون دستورات رو بنویسین . شما فقط ایندکس image ها مرتب میکردین و بر اساس موقعیت بالا و چپ اونها درست میکردین درست میشد .

142760

User SA
یک شنبه 04 مهر 1395, 15:08 عصر
ممنونم از وقتی که گذاشتید ولی این مورد نیاز من نیست
منظور من از گذاشتن ImageBox ها این بود که بگم نحوه چیدمان Picture ها باید به این شکل بشه (ینی در نهایت مثل عکس شما) ما کلا با Image Box ها کاری نداریم و همه چیز باید با کدنویسی انجام بشه
آخه تعداد کنترلی که باید ساخته بشه مشخص نیست و بسته به تعداد رکورد های جدول داره
پس من نمیتونم از قبل مشخص کنم و این کنترل ها باید در زمان اجرا ساخته بشه و مهم تر از اون طوری ساخته بشه که اندازه ها به این شکل باشه

Fery666
یک شنبه 04 مهر 1395, 22:40 عصر
نمیدونم این کد به دردت میخوره یا نه .

ولی با یه شرط توی حلقه میشه درستش کرد .




Private Sub Form_Load()
Dim Pic As Integer
Dim Jadval As Integer
Dim XTop As Double
Dim XLeft As Double
XTop = 0
XLeft = 4800
For Pic = 1 To 9
Load PictureBox(Pic)
With PictureBox(Pic)

.Visible = True
.Top = XTop
.Left = XLeft
XLeft = XLeft - 2100
End With
If XLeft = -1500 Then
XTop = XTop + 2880
XLeft = 4800
End If
Next Pic
End Sub