Разработать и реализовать на экране политический или экологический плакат с динамическими (движущимися или ми-гающими) эффектами. - VB
Формулировка задачи:
Плакат. Разработать и реализовать на экране политический или экологический плакат с динамическими (движущимися или ми-гающими) эффектами. При помощи клавиш со стрелками обеспечить управление динамическими объектами.
Но мне нужны мерцающие или двигающиеся эффекты, а я не знаю как и какие сделать
Решение задачи: «Разработать и реализовать на экране политический или экологический плакат с динамическими (движущимися или ми-гающими) эффектами.»
textual
Листинг программы
Option Explicit Private Declare Function TransparentBlt Lib "msimg32.dll" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal crTransparent As Long) As Boolean Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long Dim Speed As Single Dim Clouds As StdPicture, Tree As StdPicture, Ground As StdPicture Dim Dc As Long, oBmp As Long Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyDown Speed = Speed - 0.1 Case vbKeyUp Speed = Speed + 0.1 End Select If Speed < 0 Then Speed = 0 End Sub Private Sub Form_Load() Set Clouds = LoadPicture(App.Path & "\Clouds.jpg") Set Tree = LoadPicture(App.Path & "\Tree.bmp") Set Ground = LoadPicture(App.Path & "\Ground.bmp") Dc = CreateCompatibleDC(Me.hdc) oBmp = SelectObject(Dc, Tree) End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) SelectObject Dc, oBmp DeleteDC Dc End Sub Private Sub tmrFrames_Timer() Static cOffset As Long, cPos As Single Dim W As Long, H As Long W = Me.ScaleX(Clouds.Width, vbHimetric, vbPixels) H = Me.ScaleY(Clouds.Height, vbHimetric, vbPixels) cPos = cPos - Speed cOffset = CLng(cPos) Mod W Me.PaintPicture Clouds, 0, 0, W + cOffset, , -cOffset, , W + cOffset If cOffset Then Me.PaintPicture Clouds, W + cOffset, 0, -cOffset, , , , -cOffset W = Me.ScaleX(Ground.Width, vbHimetric, vbPixels) H = Me.ScaleY(Ground.Height, vbHimetric, vbPixels) Me.PaintPicture Ground, 0, Me.ScaleHeight - 200, W, H W = Me.ScaleX(Tree.Width, vbHimetric, vbPixels) H = Me.ScaleY(Tree.Height, vbHimetric, vbPixels) TransparentBlt Me.hdc, 0, 0, W, H, Dc, 0, 0, W, H, &HFF00FF End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д