怎样往frmsplash窗体中添加动画?

wuqiuzi 2000-06-13 07:27:00
各位大虾:
我在我的VB程序中添加了一个frmsplash(快速显示窗体),
请问怎样向里面添加动画文字,象网页上的移动文字一样。
谢谢!
wuqiuzi
...全文
114 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuayo 2000-06-18
  • 打赏
  • 举报
回复
如果用大量的图片来一个动画效果的话,那可用多少资源呀,如果用avi的话,容量也是
很大的呀,我觉得最好的方法就是用一个能够播发gif的控件,这种空间很多地方都有的,
你可以找以下。不过很多都是要注册的,哎呀,真掺。.......
xguoz 2000-06-14
  • 打赏
  • 举报
回复
如果添加的是固定内容,可以使用SSActive Panel直接插入连续动画图片即可。
如果需要显示动态内容,最简单的方法就是直接设置一个TEXTBOX或LABEL的文字内容
但这样的SPLASH窗口最好不要设置为模式窗口,否则程序会出现等待情况而不会继续。
fuzhanyu 2000-06-14
  • 打赏
  • 举报
回复
先做个AVI,在由Animate空件调用
vb小游戏定义蛇的运动速度枚举值 Private Enum tpsSpeed QUICKLY = 0 SLOWLY = 1 End Enum '定义蛇的运动方向枚举值 Private Enum tpsDirection D_UP = 38 D_DOWN = 40 D_LEFT = 37 D_RIGHT = 39 End Enum '定义运动区域4个禁区的枚举值 Private Enum tpsForbiddenZone FZ_TOP = 30 FZ_BOTTOM = 5330 FZ_LEFT = 30 FZ_RIGHT = 5730 End Enum '定义蛇头及身初始化数枚举值 Private Enum tpsSnake SNAKEONE = 1 SNAKETWO = 2 SNAKETHREE = 3 SNAKEFOUR = 4 End Enum '定义蛇宽度的常量 Private Const SNAKEWIDTH As Integer = 100 '该过程用于显示游戏信息 Private Sub Form_Load() Me.Show Me.lblTitle = "BS贪食蛇 — (版本 " & App.Major & "." & App.Minor & "." & App.Revision & ")" Me.Caption = Me.lblTitle.Caption frmSplash.Show 1 End Sub '该过程用于使恢复原始大小 Private Sub Form_Resize() If Me.WindowState <> 1 Then Me.Caption = "" Me.Height = 6405 '高度为 6405 缇 Me.Width = 8535 '宽度为 8535 缇 Me.Left = (Screen.Width - Width) \ 2 Me.Top = (Screen.Height - Height) \ 2 End If End Sub '该过程用于重新开始开始游戏 Private Sub cmdGameStart_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Beep msg = MsgBox("您确认要重新开始游戏吗?", 4 + 32, "BS贪食蛇") If msg = 6 Then Call m_subGameInitialize End Sub '该过程用于暂停/运行游戏 Private Sub chkPause_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Me.chkPause.Caption = "暂停游戏(&P)" Then Me.tmrSnakeMove.Enabled = False Me.tmrGameTime.Enabled = False Me.picMoveArea.Enabled = False Me.lblPauseLab.Visible = True Me.chkPause.Caption = "继续游戏(&R)" Else Me.tmrSnakeMove.Enabled = True Me.tmrGameTime.Enabled = True Me.picMoveArea.Enabled = True Me.lblPauseLab.Visible = False Me.chkPause.Caption = "暂停游戏(&P)" End If End Sub '该过程用于显示游戏规则 Private Sub cmdGameRules_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Beep MsgBox " BS贪食蛇:一个规则最简单的趣味游戏,您将用键盘" & Chr(13) & _ "上的4个方向键来控制蛇的运动方向。在运动过程蛇" & Chr(13) & _ "不能后退,蛇的头部也不能接触到运动区域的边线以外" & Chr(13) & _ "和蛇自己的身,否则就游戏失败。在吃掉随机出现的" & Chr(13) & _ "果子后,蛇的身会变长,越长难度越大。祝您好运!!", 0 + 64, "游戏规则" End Sub '该过程用于显示游戏开发信息 Private Sub cmdAbout_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Beep MsgBox "BS贪食蛇" & "(V-" & App.Major & "." & App.Minor & "版本)" & Chr(13) & Chr(13) & _ "" & Chr(13) & Chr(13) & _ "由PigheadPrince设计制作" & Chr(13) & _ "CopyRight(C)2002,BestSoft.TCG", 0, "关于本游戏" End Sub '该过程用于退出游戏 Private Sub cmdExit_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Beep msg = MsgBox("您要退出本游戏吗?", 4 + 32, "BS贪食蛇") Select Case msg Case 6 End Case 7 Me.chkWindowButton(2).Value = 0 Exit Sub End Select End Sub '该过程用于拖动_(点击图标) Private Sub imgWindowTop_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) ReleaseCapture SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MOVE, 0 End Sub '该共用过程用于处理控制按钮组的相关操作_(锁定、最小化、退出) Private Sub chkWindowButton_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single) If Button <> 1 Then Exit Sub Select Case Index Case 0 '锁定 If Me.chkWindowButton(0).Value = 1 Then Me.imgWindowTop.BorderStyle = 0 Me.imgWindowTop.Enabled = False Else Me.imgWindowTop.BorderStyle = 1 Me.imgWindowTop.Enabled = True End If Case 1 '最小化 Me.WindowState = 1 Me.chkWindowButton(1).Value = 0 Me.Caption = "BS贪食蛇 — (V-" & App.Major & "." & App.Minor & "版本)" Case 2 '退出 Beep msg = MsgBox("您要退出本游戏吗?", 4 + 32, "BS贪食蛇") Select Case msg Case 6 End Case 7 Me.chkWindowButton(2).Value = 0 Exit Sub End Select End Select End Sub '该过程用于设置蛇运动速度的快慢 Private Sub hsbGameSpeed_Change() Me.tmrSnakeMove.Interval = Me.hsbGameSpeed.Value End Sub '该过程用于通过键盘的方向键改变蛇的运动方向 Private Sub picMoveArea_KeyDown(KeyCode As Integer, Shift As Integer) Select Case g_intDirection Case D_UP If KeyCode = D_DOWN Then Exit Sub Case D_DOWN If KeyCode = D_UP Then Exit Sub Case D_LEFT If KeyCode = D_RIGHT Then Exit Sub Case D_RIGHT If KeyCode = D_LEFT Then Exit Sub End Select g_intDirection = KeyCode End Sub '该计时循环过程用于计算游戏耗费的秒数并显示 Private Sub tmrGameTime_Timer() g_lngGameTime = g_lngGameTime + 1 Me.lblGameTime.Caption = g_lngGameTime & "秒" End Sub '该计时循环过程用于控制蛇的行动轨迹 Private Sub tmrSnakeMove_Timer() Dim lngSnakeX As Long, lngSnakeY As Long, lngSnakeColor As Long Dim lngPointX As Long, lngPointY As Long, lngPointColor As Long Randomize Me.picMoveArea.SetFocus Me.picMoveArea.Cls '确认蛇头的运动方向并获取新的位置 Select Case g_intDirection Case D_UP '向上运动 g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_CurY - SNAKEWIDTH Case D_DOWN '向下运动 g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_CurY + SNAKEWIDTH Case D_LEFT '向左运动 g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_CurX - SNAKEWIDTH g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY Case D_RIGHT '向右运动 g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_CurX + SNAKEWIDTH g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY End Select '根据新的位置绘制蛇头 lngSnakeX = g_udtSnake(SNAKEONE).Snake_CurX lngSnakeY = g_udtSnake(SNAKEONE).Snake_CurY lngSnakeColor = g_udtSnake(SNAKEONE).Snake_Color Me.picMoveArea.PSet (lngSnakeX, lngSnakeY), lngSnakeColor '移动蛇身其他部分的位置 For i = 2 To g_intSnakeLength g_udtSnake(i).Snake_CurX = g_udtSnake(i - 1).Snake_OldX g_udtSnake(i).Snake_CurY = g_udtSnake(i - 1).Snake_OldY lngSnakeX = g_udtSnake(i).Snake_CurX lngSnakeY = g_udtSnake(i).Snake_CurY lngSnakeColor = g_udtSnake(i).Snake_Color Me.picMoveArea.PSet (lngSnakeX, lngSnakeY), lngSnakeColor Next i '更新蛇旧的坐标位置 For j = 1 To g_intSnakeLength g_udtSnake(j).Snake_OldX = g_udtSnake(j).Snake_CurX g_udtSnake(j).Snake_OldY = g_udtSnake(j).Snake_CurY Next j '判断蛇在移动是否到了禁区而导致游戏失败 If m_funMoveForbiddenZone(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then Beep MsgBox "您的蛇移动到了禁区,游戏失败!", 0 + 16, "BS贪食蛇" Me.tmrSnakeMove.Enabled = False Me.tmrGameTime.Enabled = False Me.picMoveArea.Visible = False Exit Sub End If '判断蛇在移动是否碰到了自己的身而导致游戏失败 If m_funTouchSnakeBody(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then Beep MsgBox "您的蛇在移动碰到了自己的身,游戏失败!", 0 + 16, "BS贪食蛇" Me.tmrSnakeMove.Enabled = False Me.tmrGameTime.Enabled = False Me.picMoveArea.Visible = False Exit Sub End If '判断蛇是否吃到了果子 If m_funEatPoint(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then '累加玩家的得分并刷新得分显示 g_intPlayerScore = g_intPlayerScore + 1 Me.lblYourScore.Caption = g_intPlayerScore & "分" Call m_subAddSnake '加长蛇的身 Call m_subGetPoint '获取下一个果子的位置和颜色 Else '绘制果子 lngPointX = g_udtPoint.Point_X lngPointY = g_udtPoint.Point_Y lngPointColor = g_udtPoint.Point_Color Me.picMoveArea.PSet (lngPointX, lngPointY), lngPointColor End If End Sub '该私有子过程用于初始化游戏 Private Sub m_subGameInitialize() Erase g_udtSnake '清空蛇的结构数组 g_intPlayerScore = 0 '清空玩家的得分 g_lngGameTime = 0 '清空游戏耗费的秒数 g_intDirection = D_DOWN '设定蛇的初始运动方向为下 g_intSnakeLength = 4 '设定蛇的初始长度 ReDim g_udtSnake(1 To g_intSnakeLength) '重新定义蛇的长度 '定义蛇头部的数据 With g_udtSnake(SNAKEONE) .Snake_OldX = 530 .Snake_OldY = 530 .Snake_Color = vbBlack End With '定义蛇身第2节的数据 With g_udtSnake(SNAKETWO) .Snake_OldX = 530 .Snake_OldY = 430 .Snake_Color = vbGreen End With '定义蛇身第3节的数据 With g_udtSnake(SNAKETHREE) .Snake_OldX = 530 .Snake_OldY = 330 .Snake_Color = vbYellow End With '定义蛇身第4节的数据 With g_udtSnake(SNAKEFOUR) .Snake_OldX = 530 .Snake_OldY = 230 .Snake_Color = vbRed End With Me.picMoveArea.Visible = True Me.lblYourScore.Caption = g_intPlayerScore & "分" Me.lblGameTime.Caption = g_lngGameTime & "秒" Me.tmrSnakeMove.Interval = Me.hsbGameSpeed.Value Me.tmrSnakeMove.Enabled = True Me.tmrGameTime.Enabled = True Call m_subGetPoint '获取第一个果子的位置和颜色 End Sub '该私有子过程用于返回获取的果子的位置和颜色信息 Private Sub m_subGetPoint() Dim lngRedValue As Long, lngGreenValue As Long, lngBlueValue As Long Dim lngPointX As Long, lngPointY As Long, lngPointColor As Long '随机获取果子的颜色 lngRedValue = Int((255 - 0 + 1) * Rnd + 0) lngGreenValue = Int((255 - 0 + 1) * Rnd + 0) lngBlueValue = Int((255 - 0 + 1) * Rnd + 0) lngPointColor = RGB(lngRedValue, lngGreenValue, lngBlueValue) '随机获取果子的位置 lngPointX = Int((FZ_LEFT - FZ_RIGHT + 1) * Rnd + FZ_RIGHT) lngPointY = Int((FZ_TOP - FZ_BOTTOM + 1) * Rnd + FZ_BOTTOM) Me.PSet (lngPointX, lngPointY), lngPointColor '设置函数返回值 With g_udtPoint .Point_X = lngPointX .Point_Y = lngPointY .Point_Color = lngPointColor End With End Sub '该私有子过程用于加长蛇的身 Private Sub m_subAddSnake() Dim udtSnakeTemp() As Snake Dim lngSnakeX As Long, lngSnakeY As Long, lngSnakeColor As Long '备份蛇原先身的数据并使蛇的身加长 ReDim udtSnakeTemp(1 To g_intSnakeLength) For k = 1 To g_intSnakeLength With udtSnakeTemp(k) .Snake_CurX = g_udtSnake(k).Snake_CurX .Snake_CurY = g_udtSnake(k).Snake_CurY .Snake_OldX = g_udtSnake(k).Snake_OldX .Snake_OldY = g_udtSnake(k).Snake_OldY .Snake_Color = g_udtSnake(k).Snake_Color End With Next k g_intSnakeLength = g_intSnakeLength + 1 ReDim g_udtSnake(g_intSnakeLength) '将备份蛇身的数据返回到加长的蛇身数组 For l = 1 To g_intSnakeLength - 1 With g_udtSnake(l) .Snake_CurX = udtSnakeTemp(l).Snake_CurX .Snake_CurY = udtSnakeTemp(l).Snake_CurY .Snake_OldX = udtSnakeTemp(l).Snake_OldX .Snake_OldY = udtSnakeTemp(l).Snake_OldY .Snake_Color = udtSnakeTemp(l).Snake_Color End With Next l '写入新加入的身数据 Select Case g_intDirection Case D_UP With g_udtSnake(g_intSnakeLength) .Snake_OldX = g_udtSnake(g_intSnakeLength - 1).Snake_CurX + SNAKEWIDTH .Snake_OldY = g_udtSnake(g_intSnakeLength - 1).Snake_CurY .Snake_Color = g_udtPoint.Point_Color End With Case D_DOWN With g_udtSnake(g_intSnakeLength) .Snake_OldX = g_udtSnake(g_intSnakeLength - 1).Snake_CurX - SNAKEWIDTH .Snake_OldY = g_udtSnake(g_intSnakeLength - 1).Snake_CurY .Snake_Color = g_udtPoint.Point_Color End With Case D_LEFT With g_udtSnake(g_intSnakeLength) .Snake_OldX = g_udtSnake(g_intSnakeLength - 1).Snake_CurX .Snake_OldY = g_udtSnake(g_intSnakeLength - 1).Snake_CurY + SNAKEWIDTH .Snake_Color = g_udtPoint.Point_Color End With Case D_RIGHT With g_udtSnake(g_intSnakeLength) .Snake_OldX = g_udtSnake(g_intSnakeLength - 1).Snake_CurX .Snake_OldY = g_udtSnake(g_intSnakeLength - 1).Snake_CurY - SNAKEWIDTH .Snake_Color = g_udtPoint.Point_Color End With End Select lngSnakeX = g_udtSnake(g_intSnakeLength).Snake_CurX lngSnakeY = g_udtSnake(g_intSnakeLength).Snake_CurY lngSnakeColor = g_udtSnake(g_intSnakeLength).Snake_Color Me.picMoveArea.PSet (lngSnakeX, lngSnakeY), lngSnakeColor End Sub '该自定义函数用于返回运动的蛇是否到达禁区而导致游戏失败 Private Function m_funMoveForbiddenZone(SnakeX As Long, SnakeY As Long) As Boolean If (SnakeX >= FZ_LEFT And SnakeX <= FZ_RIGHT) And (SnakeY >= FZ_TOP And SnakeY <= FZ_BOTTOM) Then m_funMoveForbiddenZone = False Else m_funMoveForbiddenZone = True End If End Function '该自定义函数用于返回运动的蛇是否碰到自己的身而导致游戏失败 Private Function m_funTouchSnakeBody(SnakeX As Long, SnakeY As Long) As Boolean For m = 2 To g_intSnakeLength If SnakeX = g_udtSnake(m).Snake_CurX And SnakeY = g_udtSnake(m).Snake_CurY Then m_funTouchSnakeBody = True Exit For Else m_funTouchSnakeBody = False End If Next m End Function '该自定义函数用于返回运动的蛇是否吃到了果子 Private Function m_funEatPoint(SnakeX As Long, SnakeY As Long) As Boolean If Abs(SnakeX - g_udtPoint.Point_X) <= SNAKEWIDTH And Abs(SnakeY - g_udtPoint.Point_Y) <= SNAKEWIDTH Then m_funEatPoint = True Else m_funEatPoint = False End If End Function '(API函数调用过程_用以实现无标题的拖动操作)--------------------------------- 'RleaseCapture函数用以释放鼠标捕获 Public Declare Function ReleaseCapture Lib "user32" () As Long 'SendMessage函数用作向Windows发送移动的消息 Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As _ Long, ByVal wMsg As Long, ByVal wParam As Long, IParam As Any) As Long Public Const WM_SYSCOMMAND = &H112; '声明向Windows发送消息的常量 Public Const SC_MOVE = &HF012; '声明控制移动常量 '(游戏变量声明部分)------------------------------------------------------------- '定义蛇的数据类型结构 Public Type Snake Snake_OldX As Long Snake_OldY As Long Snake_CurX As Long Snake_CurY As Long Snake_Color As Long End Type '定义果子的数据类型结构 Public Type Point Point_X As Long Point_Y As Long Point_Color As Long End Type '定义蛇的动态数组 Public g_udtSnake() As Snake '定义果子 Public g_udtPoint As Point '定义蛇的长度 Public g_intSnakeLength As Integer '定义蛇的颜色 Public g_lngSnakeColor As Long '定义蛇的运动方向 Public g_intDirection As Integer '定义玩家的得分 Public g_intPlayerScore As Integer '定义游戏耗费的秒数 Public g_lngGameTime As Long
实时监控小区状态,远程报警。 新建文件夹 (2) ..............\新建文件夹 (2) ..............\..............\Data ..............\..............\....\EVENTS.MDB ..............\..............\....\OCCUPIER.MDB ..............\..............\....\systemconfig.mdb ..............\..............\FormPrint.frm ..............\..............\frmAbout.frm ..............\..............\frmAbout.frx ..............\..............\frmFace.frm ..............\..............\frmLogin.frm ..............\..............\frmLogin.frx ..............\..............\frmLogin.log ..............\..............\frmMain.frm ..............\..............\frmMain.frx ..............\..............\frmOwner.frm ..............\..............\frmOwner.frx ..............\..............\frmPW.frm ..............\..............\frmQueryEvents.frm ..............\..............\frmQueryEvents.frx ..............\..............\frmQueryEvents.log ..............\..............\frmSplash.frm ..............\..............\frmSplash.frx ..............\..............\frmTeleConfig.frm ..............\..............\frmTeleConfig.frx ..............\..............\frmTip.frm ..............\..............\frmTip.frx ..............\..............\frmUser.frm ..............\..............\frmUser.frx ..............\..............\FUNCTION.BAS ..............\..............\GRAPHLITE.oca ..............\..............\GraphLite.ocx ..............\..............\IMAGES ..............\..............\......\AUDIO.JPG ..............\..............\......\BOOK02.ICO ..............\..............\......\BOOK04.ICO ..............\..............\......\BOOK04.JPG ..............\..............\......\CARS.ICO ..............\..............\......\CONNECT.ICO ..............\..............\......\CRDFLE13.ICO ..............\..............\......\EMP.ICO ..............\..............\......\EMP.JPG ..............\..............\......\EMPLY.ICO ..............\..............\......\EYE.ICO ..............\..............\......\FIRE.ICO ..............\..............\......\FIRE.JPG ..............\..............\......\GRAPH01.ICO ..............\..............\......\GRAPH07.ICO ..............\..............\......\GREEN.ICO ..............\..............\......\HANDSHAK.ICO ..............\..............\......\Handshak1.ico ..............\..............\......\HELP.ICO ..............\..............\......\HELP.JPG ..............\..............\......\HOUSE.ICO ..............\..............\......\HOUSE.JPG ..............\..............\......\Icon1.ico ..............\..............\......\LIGHTOFF.ICO ..............\..............\......\LIGHTON.ICO ..............\..............\......\MISC08.ICO ..............\..............\......\MISC15.ICO ..............\..............\......\MISC27.ICO ..............\..............\......\MISC29.ICO ..............\..............\......\MSGBOX01.ICO ..............\..............\......\MSGBOX02.ICO ..............\..............\......\MSGBOX03.ICO ..............\..............\......\MSGBOX04.ICO ..............\..............\......\NET01.ICO ..............\..............\......\NET14.ICO ..............\..............\......\NOTE03.ICO ..............\..............\......\NOTE04.ICO ..............\..............\......\NOTE14.ICO ..............\..............\......\NOTE17.ICO ..............\..............\......\PENCIL04.ICO ..............\..............\......\PENCIL05.ICO ..............\..............\......\PENCIL09.ICO ..............\..............\......\PHONE08.ICO ..............\..............\......\PHONE08.JPG ..............\..............\......\PHONE13.ICO ..............\..............\......\POINT06.ICO ..............\..............\......\PRINTER.ICO ..............\..............\......\PRINTER.JPG ..............\..............\......\QUESTION.ICO ..............\..............\......\RED.ICO ..............\..............\......\RUIBO.GIF ..............\..............\......\RUIBO2.GIF ..............\..............\......\RUIBO3.GIF ..............\..............\......\STATE31.ICO ..............\..............\......\STATE31.JPG ..............\..............\......\TABLE.ICO ..............\..............\......\TIME1.ICO ..............\..............\......\Trffc10aold.ico ..............\..............\......\Trffc10b.icoold ..............\..............\......\Trffc10c.icoold ..............\..............\......\TRFFC13.ICO ..............\..............\......\TRFFC14.ICO

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧