خوب امروز يه برنامه گرافيكي كوتاه فوق العاده
براتون آماده كردم.با اين برنامه مي تونين دو تا تصوير رو روي هم بندازيد و حركت بدين
البته تصاويرتون بايدJPGباشه و زياد بزرگ نباشه.دستورات زير رو در قسمت عمومي فرم
بنويسيدGeneral
Dim Image1 As IPictureDisp
Dim Image2 As IPictureDisp
Private Type Location
X As Integer
Y As Integer
End Type
Dim Image1Move As Integer
Dim Image2MoveX As Integer
Dim Image2MoveY As Integer
Dim Image1Local As Location
Dim Image2Local As Location
Const Operation = vbSrcAndدو تا عكس رو در مسير برنامه كپي كنيد كه فرمت شون جي پگ باشه
اسمشون هم1و2باشه به ترتيب ببخشيد اين ضعف در جمله بندي مال ترك بودنمه
طبيعيه كه شما هم نتونيد به خوبيه من تركي حرف بزنيد
كد زير ماله Form_Loadهست("Set Image1 = LoadPicture(App.Path & "\Image1.jpgخب حالا حالتون چطوره!! براي اينكه دستورات بالا داخل يه
("Set Image2 = LoadPicture(App.Path & "\Image2.jpg
With me
.Show
Refresh.
.AutoRedraw = True
.ScaleMode = vbPixels
End With
Image1Move = 1
Image2MoveX = 3
Image2MoveY = 3
Do
me.PaintPicture Image1, Image1Local.X, Image1Local.Y
me.PaintPicture Image1, Image1Local.X + me.ScaleWidth, Image1Local.Y
me.PaintPicture Image1, Image1Local.X, Image1Local.Y + me.ScaleHeight
me.PaintPicture Image1, Image1Local.X + me.ScaleWidth, Image1Local.Y + me.ScaleHeight
me.PaintPicture Image2, Image2Local.X, Image2Local.Y, , , , , , , Operation
me.PaintPicture Image2, Image2Local.X + me.ScaleWidth, Image2Local.Y, , , , , , , Operation
me.PaintPicture Image2, Image2Local.X, Image2Local.Y + me.ScaleHeight, , , , , , , Operation
me.PaintPicture Image2, Image2Local.X + me.ScaleWidth, Image2Local.Y + me.ScaleHeight, , , , , , , Operation
With Image1Local
.X = .X - Image1Move
.Y = .Y - Image1Move
If .X < -me.ScaleWidth Then .X = 0
If .Y < -me.ScaleHeight Then .Y = 0
End With
With Image2Local
.X = .X - Image2MoveX
.Y = .Y - Image2MoveY
If .X < -me.ScaleWidth Then .X = 0
If .Y < -me.ScaleHeight Then .Y = 0
If .X + me.ScaleWidth > me.ScaleWidth Then .X = -me.ScaleWidth
If .Y + me.ScaleHeight > me.ScaleHeight Then .Y = -me.ScaleWidth
End With
DoEvents
Loop
حلقه بي پايان قرار مي گيره بايد در رويداد كليك فرم بنويسيدEnd
فرم رو زياد بزگ نكنيد سعي كنيد تصوير ها هم اندازه باشه وفرم هم اندازه تصوير ها
براي اينكه در حركت عكس ها تنوع ايجاد كنيم در رويدادMouseMoveفرم
دستور زير رو بنويسيد
Image2MoveX = Int(me.ScaleWidth \ 2 - X) \ 10اين فتواي نظر ندادن مكروه رو كه شنيدي بجنب نظر بده يالا
Image2MoveY = Int(me.ScaleWidth \ 2 - Y) \ 10
1 کاربر در حال مشاهده این موضوع. (0 عضو و 1 میهمان)
Bookmarks