vb程序设计实例_第1页
vb程序设计实例_第2页
vb程序设计实例_第3页
免费预览已结束,剩余20页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、vb 程序设计实例2009-5-22 15:37提问者: 淘淘的某在 | 悬赏分: 20 | 浏览次数: 1688 次 编写程序,设银行定期存款的年利率为: 1年期 2.25% ,2年期 2.43% ,3年期 为 2.70% ,5 年期为 2.88% (不记复利)。今有 X 元,5年以后使用,共有如下 6 中存法: 存一次 5 年期; 存一次 3 年期,一次 2 年期; 存一次 3 年期,两次 1 年期; 存两次 2 年期,一次 1 年期; 存一次 2 年期,三次 1 年期; 存五次 1 年期 .分别计算各种存法 5 年后到期的本息合计,如图所示2009-5-22 17:06 最佳答案Priv

2、ate Sub Form_Activate()'1年期2.25%,2年期 2.43% ,3年期为 2.70%,5年期为 2.88%(不记复利) 今有 X 元,5 年以后使用,共有如下 6 中存法:Const x1 As Double = 0.0225, x2 As Double = 0.0243, x3 As Double = 0.027, x5 As Double = 0.0288Dim x As Doublex = Val(InputBox("")Print "存一次 5年期,5 年后到期的本息合计 " ss(x, 5, x5)Print &

3、quot;存一次 3年期,一次 2年期,5 年后到期的本息合计 " ss(ss(x, 3, x3), 2, x2)Print "存一次 3 年期,两次 1 年期,5 年后到期的本息合计 " ss(ss(ss(x, 3, x3), 1, x1), 1, x1)Print "存两次 2 年期,一次 1 年期,5 年后到期的本息合计 " ss(ss(ss(x, 2, x2), 2, x2), 1, x1)Print "存一次 2年期,三次 1年期,5年后到期的本息合计 " ss(ss(ss(ss(x, 2, x2), 1, x1)

4、, 1, x1), 1, x1)Print "存五次 1年期,5年后到期的本息合计 " ss(ss(ss(ss(ss(x, 1, x1), 1, x1), 1, x1), 1, x1), 1, x1)End SubPrivate Function ss(ByVal a As Double, b As Integer, c As Double) As Double ss = a + a * c * bEnd FunctionPrivate Sub Form_Load()AutoRedraw = TrueEnd Sub如下Dim str As StringPrivate Sub

5、 Command1_Click()str = Text1.SelTextText1.SelText = ""Command3.Enabled = TrueEnd SubPrivate Sub Command2_Click()str = Text1.SelTextCommand3.Enabled = TrueEnd SubPrivate Sub Command3_Click()Text1.SelText = strEnd SubPrivate Sub Command4_Click()EndEnd SubPrivate Sub Command5_Click()Form2.Sho

6、wForm1.HideEnd SubPrivate Sub Form_Load()Command1.Enabled = TrueCommand2.Enabled = TrueCommand3.Enabled = FalseCommand4.Enabled = TrueEnd Sub如何让Commandl-功能键的目标转向textl 内的内容我点的时候必须 把 text1 里面的内容去选定后才能 进行操作如何让他自己选定为 text1 的内容- - !上面的Comma nd剪切功能Comma nd复 制功能Comma nd粘 贴功能Comma nd退出-!三、利用VB三维面板控件设计流动条200

7、0-09-15 00:00:00 王金柱 yeskyVB提供了一个三维面板控件,利用这个控件可设计图形效果的立体界面,从而使 应用程序的界面显得更生动、美观,该控件还可以设置各种形式的背景,然后在背景上 显示各种形式的字符,令人感兴趣的是,使用三维面板控件,还可设计我们经常在安装 程序中看到的表示安装进程的流动条,并可显示进程百分比,改变流动条的颜色等。一、介绍属性FloodColor :确定流动条的颜色,缺省为蓝色。FloodPercent :显示当前过程如流动条进行的百分比,参数改变时显示的百分数和 流动条的面积改变,设为一整型值,取值范围是0100。FloodShowpct :决定是否在

8、三维面板控件上显示百分比,是一个逻辑值。为True时显示,为False时不显示。FloodType :表示用户对三维面板控件的使用方式。可取值有6个,如下所示:0缺省设置1表示流动条方向从左到右2表示流动条方向从右到左3表示流动条方向从上到下4表示流动条方向从下到上5表示使用指定的颜色从圆心向外画圆二、流动条设计如果在 Windows3 ? X下,工具箱中不存在三维面板控件,可选择File菜单中的“AddFile进行添加,在弹出的对话框中找到WindowsSystem 目录,然后选定Threed ?vbx文件即可,如果使用 VB4.0,需在Tools菜单中选择 Custom Controls

9、命令,选定 Sheridan 3d Controls 项,按OK按钮,可在工具箱中增加三维面板控件。启动VB3 ? 0 ,在窗体中画一水平方向的长方形三维面板控件,按F4,在属性窗口中设置其 Name 为 P3d、Bevellnner 为 2 Raised、FloodType 为 1、FloodshowPct 为True,再在窗体中画一个按钮 Command1,双击该按钮,键入下面的代码:Sub Comma nd1_Click()P3d ? floodpercent=OFor N %=1 To 100If N % $#62;100 THENExit SubEnd IfP3d ? FloodPe

10、rcent=N %Next I %End Sub按F5 ,运行该程序,点击 Comma nd按钮,即可看到流动条效果。四、使用VB设计具有动感的命令图标栏2000-09-15 00:00:00 张嵘 VB 编程乐园p> 我们在使用 Word、Excel等Windows应用程序时,经常会见到在程序界面顶端 有一行 立体式”图标按钮。当用鼠标按下某一个图标按钮时,程序就执行相应的操作。 这一行立体式”图标按钮通常就称作命令图标栏或工具条。命令图标栏一般提供一些最常用的命令,供用户快速地取用,并且它设计时采用了立体式”按钮,操作时会产生凹下去和凸出来的 动感”,笔者这里就谈谈如何用 VB来建立

11、具有 动感”的命令图标栏。使命令图标具有 动感”是依靠对命令图标的不同状态的图像切换来获得的。当鼠标按下时,图标显示为凹入状态的图像;当松开时,图标显示为凸出状态的图像。通过图 像切换就使命令图标具有了动感”具体设计步骤如下:1。 首先在窗体中创建一个图片框(Picture Box),将其Align属性置为1,使图片 框固定在窗体上端,调节其宽度使其能安置图像或命令按钮。2。 在图标框内创建若干个图像框(Image Control),设置其Autosize = True, Picture 属性在程序运行中设置。3。 编写程序代码。这里假设某个命令图标凸出状态的图像文件名为"zrup.

12、bmp",凹入状态的图像文件名为"zrdown .bmp "。窗体装入时:Sub form load ()Imagel.picture = Loadpicture (" zrup.bmp ")'命令图标凸出End sub鼠标按下时:Sub Imagel mousedown (Button As Integer Shift As Integer , X As single , Y As single )Imagel.picture = Loadpicture (" zrdown.bmp ")'命令图标如下:En

13、d sub鼠标松开时:Sub Imagel mouseup(Button As Integer ,Shift As Integer ,X As single,Y As single )Imagel.picture = Loadpicture (" zrup.bmp ") '命令图标凸出End sub以上只能使命令图标具备凹下去的功能, 但当在按鼠标按钮不放,并拖曳鼠 标使光标移到外头,原来图标仍然处于凹下状态。要使其自动凸起,就要编写如 下代码:Sub Imagel-mouseup(Button As Integer,Shift As Integer,X As si

14、ngle,Y As single)Select Case ButtonCase 1If X$#60;=0 or X$#62;Imagel.Width or Y$#60;=0 orY$#62;Imagel.Height thenImagel.picture=Loadpicture("zrup.bmp") 凸出'elseImagel.picture=Lo icture("zrdown.bmp") 凹入'End ifEnd selectEnd sub通过以上三步骤就可以建立具有 “动感”的命令图标,若具有多个命令图标 时,可通过创建图像控制数组

15、来实现。 BMP 是常见的一种图像格式,也可以使 用VB提供的丰富的不同状态的命令图标位图文件,它在VB的子目录 bitmaps中。五、实现窗体内部的左右移动'分割区的宽度Private Const SPL99vTERWIDTH = 45'最小移动宽度Private Const HMIN = 15'picLeft 和 picRight 的宽度相对于窗体的比例Private Percent As Single'正在拖动的标志Private DragFlag As Boolean'每次拖动后需要重排窗体上的控件Private Sub RedrawMe()Di

16、m NewWidth As Single' 忽略窗体缩小的情况If WindowState = vbMinimized Then Exit SubNewWidth = (ScaleWidth - SPL99vTERWIDTH) * PercentPicleft.Move 0, 0, NewWidth, ScaleHeightPicright.Move NewWidth + SPL99vTERWIDTH, 0, ScaleWidth - NewWidth - SPL99vTERWIDTH, ScaleHeightEnd SubPrivate Sub Form_Load()'Pic

17、Left 和 PicRight 的 MousePointer=1Percent = 0.5End SubPrivate Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) DragFlag = TrueEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) '定义鼠标为 vbSizeWE 型MousePointer = vbSizeWEPe

18、rcent = X / ScaleWidthRedrawMeEnd SubPrivate Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) DragFlag = FalseMousePointer = 0 ' 此行语句实际没有起作用End Sub封面的设计一、封面的设计是这样的,先出现一窗体,上面为你喜欢的图案。然后出现一艘从左向右行驶着的船。 屏幕上方从两侧分别移动出 “欢迎 ”两个字。具体的制作方法是:把预先选好的背景图案装入封面窗体中, 窗体命名为 CAI 。再分别在三个

19、图像控件 (image) 中装入预先制作好的位图 “欢”、“迎”和船型图案。然后把 三个image放置在初始位置(即图案刚在窗体出现时的位置),并把它们的可视属性都设置为“false。程序如下:Sub Form_load()cai.Show显示圭寸面窗体Dim i定义变量image3.visible=True 船型图像控件出现a1: If image3.Left < 6120 Then'612为船移动到屏幕右边的坐标,此值可以随需要选取image3.Move image3.Left 50移动此图像控件如嫌移动慢,可改变移动值Goto a1End Ifimage1.visible=

20、True 欢”字“出现a2: If image1.Left < 2120 Then'212为 欢”字移动到屏幕中间的位置imagel.Move imagel.Left + 50 移动此图像控件Goto a2End Ifimage2.visible=True 迎”字“出现a3: If image2.Left > 5420 Then'542为 迎”字移动到屏幕中间的位置image2.Move image2.Left 50 移动此图像控件Goto a3End IfFor i=1 To 10000使窗体暂停一段时间时间长短可通过改变循环次数实现Next imenul.Sho

21、w '显示程序主窗体Unload cai 卸载封面窗体End Sub二、简单的动画”有的光线射到此中心后反射点击一 3D 按钮后,屏幕表现光线平行进入一玻璃管, 在管中有一散射中心, 到管的初始端。程序如下:Sub Command3Dl_Click()Dim i, j, k, m, n 定义变量For i=2080 To 5520显示出三条线,直到图像中的散射中心处,颜色为黑色Line(2080,2760) (i,2760),RGB(0, 0, 0)Line(2080,2860) (i,2860),RGB(0, 0, 0)Line(2080,2660) (i,2660),RGB(0,

22、0, 0)Next iFor j=5520 To 4800 Step 1 反射光线第一次射到管壁上Line(5520,2760) (j,2760 (5520 j) .33333333) , RGB(255, 0, 0) 反射光线 ,颜色为红色Line(5520,2660) (5520(5520j),2660),RGB(0, 0, 0)Line(5520,2860) (5520(5520j),2860),RGB(0, 0, 0)没有遇到散射中心的两条光线,为黑色,继续前进Next jFor k=4800 To 3360 Step - 1反射光线第二次射到管壁上Line(4800,2520) (k

23、,2520 (4800 k).33333333),RGB(255, 0, 0) 反射光线 ,颜色为红色Line(6240,2660) - (6240 (4800 - k),2660),RGB(0,0,0)Line(6240,2860) - (6240 (4800 - k),2860),RGB(0,0,0)没有遇到散射中心的两条光线,颜色为黑色Next kFor m=3360 To 2080 Step - 1 反射光线第三次射到管壁上Line(3360,3000) - (m,3000 - (3360 - m).33333333),RGB(255, 0, 0) 反射光线 ,颜色为红色Next mE

24、nd Sub三、封底封底的设计是: 先出现全黑的屏幕, 然后从上至下逐渐拉出白底红字的 “再见 ”的字样。先按要求在画板中 做一个 BMP 图,上面写着 “再见”。然后在一名为 BYE 的窗体中加入一个全屏大的 Picturel, 将 BMP 图装入。程序如下:Sub Form_Load()Dim i定义变量bye.Show封底出现Unload menul '卸载主菜单al: If picture1.Height < 7130 Then为图7的1 3高0度picturel.Height=picture1.Height + 50 下拉屏幕GoTo alEnd IfFor i=1 T

25、o 20000 使窗体暂停一段时间Next iEnd结束所有操作End Sub利用 Visual Basic 让命令行软件全面转向 Windows众所周知, Windows 以其优美的图形界面,方便快捷的操作环境,已成为当今的主流操作系统,但由于 其程序编写过于复杂,有很多用户常用的工具和小程序仍然只能运行于DOS 环境下,造成 Windows 和DOS 的频繁切换、使工作缺乏连续性和效率低下。有什么方法可以解决这一问题呢?等待For Windows版本的面市,但仍会造成重复投资。据笔者观察发现,常用工具中有一部分为命令行软件,这些软件完 全可以利用 VB 改编成 For Windows 版本

26、的。首先由于 VB 的简单易用,使 Windows 的界面设计变得异 常简单直观。所以可轻而易举的将命令选项、开关等转化为对应的图形界面(如复选钮等)。其次由于VB 为用户提供了 Shell 函数,也使得命令调用非常简单。 通过 Shell 其实你只做了个界面, 核心还是 DOS 下的原来工具。其函数格式如下:Shell (命令字符串 <, 窗口类型 >)命令字符串即具体执行的命令(如字符串 “arj e a:user.arj c: user ”)有关字符串的操作可查阅有关书籍。 至于窗口型类型缺省即可。 最后只须注意, 在 Shell 执行函数之前, 有必要对命令行中有可能引发错

27、误的Arj for Windows 版本,其结果出乎想象。希望大家能自己动手全面转向 Windows 。七、利用 VB 产生屏幕变暗的效果想利用 VB 编程实现屏幕变暗的效果(像关闭 Win95 时的效果),只要按下面的步骤来做:1. 在 Form1 中加入两个 CommandButton 和一个 PictureBox.2. 在 Form1 的代码窗口中添加以下代码:Private Type RECTLeft As LongTop As LongRight As LongBottom As LongEnd TypePrivate Declare Function GetDC Lib "

28、;user32" (ByVal hwnd As Long) As LongPrivate Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As LongPrivate Declare Function CreatePatternBrush Lib "gdi32" (ByVal hBitmap As Long) As LongPrivate Declare Function PatBlt Lib "gdi32" (B

29、yVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal dwRop As Long) As LongPrivate Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As LongPrivate Declare Function CreateBitmap Lib "gdi32" (ByVal nWidth As Long, B

30、yVal nHeight As Long, ByVal nPlanes As Long, ByVal nBitCount As Long, lpBits As Any) As LongPrivate Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As LongPrivate Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, ByVal lpRect A

31、s Long, ByVal bErase As Long) As LongPrivate bybits(1 To 16) As BytePrivate hBitmap As Long, hBrush As LongPrivate hDesktopWnd As LongPrivate Sub Command1_Click()Dim rop As Long, res As LongDim hdc5 As Long, width5 As Long, height5 As Long hdc5 = GetDC(0)width5 = Screen.Width Screen.TwipsPerPixelX h

32、eight5 = Screen.Height Screen.TwipsPerPixelY rop = &HA000C9Call SelectObject(hdc5, hBrush)res = PatBlt(hdc5, 0, 0, width5, height5, rop)Call DeleteObject(hBrush)res = ReleaseDC(0, hdc5)End SubPrivate Sub Command2_Click()Dim aa As Longaa = InvalidateRect(0, 0, 1)End SubPrivate Sub Form_Load()Dim

33、aryDim i As Longary = Array(&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0)For i = 1 To 16bybits(i) = ary(i - 1)Next ihBitmap = CreateBitmap(8, 8, 1, 1, bybits(1) hBrush = CreatePatternBrush(hB

34、itmap) Picture1.ForeColor = RGB(0, 0, 0) Picture1.BackColor = RGB(255, 255, 255) Picture1.ScaleMode = 3End Sub运行程序,按 Command1 就可以使屏幕暗下来,按 Command2 恢复。八、Private Declare Function GetDesktopWindow Lib "user32" () As LongPrivate Declare Function GetDC Lib "user32" (ByVal hwnd As Long

35、) As LongPrivate Declare Function StretchBlt Lib "gdi32" _(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 dwRo

36、p As Long) As LongPrivate Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)EndEnd SubPrivate Sub Form_Load()' setthe showintaskbar property to false' setthe borderstyle of the form to noneForm1.AutoRedraw = TrueForm1.ScaleMode = vbPixelsa = GetDesktopWindow()b = GetDC(a)StretchBlt Form1

37、.hdc, 0, 0, Screen.Width, Screen.Height, b, 0, _Screen.Height, Screen.Width, -Screen.Height, vbSrcCop1 2 下一页九在 VB 中实现闪动标题栏摘要 在你的应用程序中,你可能会希望将应用程序的标题栏进行闪动,以提醒用户进行某种操作,本文介绍 了如何使一个窗口的标题栏进行闪动。闪动标题栏 闪动一个窗口的标题栏意味着改变它的标题栏的外观,例如它从活动变为不活动,或是从不活动变为活 动等等。只要你能在 Visual Basic 中得到窗口的句柄, 你就可以使用 Windows 应用程序编程接口 (AP

38、I) 函数来使该窗口的标题栏进行闪动。函数 FlashWindows 可以被用使一个特定的窗口闪动一次。要使用 该函数,需要将如下的声明语句包含在你的窗体的通用声明部分中:#If Win32 ThenDeclare Function FlashWindow Lib "user32" (ByVal hwnd As Long, ByVal bInvert As Long) As Long#ElseDeclare Function FlashWindow Lib "User" (ByVal hwnd As Integer, ByVal bInvert As I

39、nteger) AsInteger#End If该函数需要 2 个参数,第一个参数是要闪动标题栏的窗口的句柄,第二个参数用于指定是设置窗口的闪 动状态,还是恢复其原始状态。如果该 bInvert 参数非 0,则表明窗口的标题栏被闪动,如果该参数为0,则表明窗口的标题栏被恢复为原始状态。该函数所返回的值用于指定调用该函数前窗口的状态,如果该 返回值非 0,则表明窗口在调用该函数之前是活动的,否则,如果返回值为0 ,则表明调用函数前窗口是非活动的。当使用该 FlashWindow 函数时,一个较好的方法是将标题栏闪动的频率设置为同脱字符(也 即闪动的光标)相同,脱字符的闪动频率可以通过调用函数 G

40、etCaretBlinkTime 来获得。要使用该函数, 需要将如下的声明语句包含在你的窗体的通用声明部分中:#If Win32 ThenDeclare Function GetCaretBlinkTime Lib "user32" () As Long#ElseDeclare Function GetCaretBlinkTime Lib "User" () As Integer#End If该函数返回用毫秒值表示的时间。样例程序1. 在 Visual Basic 中开始一个新的工程,采用缺省的方法建立 Form1 。2. 在 Form1 上添加一个定时

41、器控件,采用缺省的方法建立 Timer1 。3. 将如下的代码添加到 Form1 的 Form_GotFocus 事件中:Private Sub Form_GotFocus()Timer1.Enabled = FalseEnd Sub4. 将如下的代码添加到 Form1 的 Form_Load 事件中:Private Sub Form_Load()Timer1.Interval = GetCaretBlinkTime()Form2.ShowEnd Sub5. 将如下的代码添加到 Timer1 的 Timer1_Timer 事件中:Private Sub Timer1_Timer()Succes

42、s = FlashWindow(Form1.hwnd, 1)End Sub6. 添加第二个窗体,采用缺省的方法建立 Form2 。7. 将如下的代码添加到 Form2 的单击事件中:Private Sub Form_Click()= TrueEnd Sub8. 添加一个新的模块,采用缺省的方法建立 Module1.Bas 。将如下的代码添加到该模块的通用声明部分 中:#If Win32 ThenDeclare Function FlashWindow Lib "user32" ( _ByVal hwnd As Long, _ByVal bInvert As Long) As

43、 LongDeclare Function GetCaretBlinkTime Lib "user32" () As LongDim Success As Long#ElseDeclare Function FlashWindow Lib "User" ( _ByVal hwnd As Integer, _ByVal bInvert As Integer) As IntegerDeclare Function GetCaretBlinkTime Lib "User" () As IntegerDim Success As Intege

44、r#End If通过单击 F5 键来运行该样例程序,单击 Form2 窗体,这时 Form1 窗体将处于非活动方式,其标题栏将 会不断闪烁。单击 Form1 使它它变为活动方式,则窗体的标题栏将不再闪烁11、一组 VB 实用小程序用 VB 实现编程离不开函数调用及 Windows API 函数的调用,以下是笔者收集的一些实用的小例程,它 们可以直接用在你的实际编程中,也可以根据实际应用加以扩充完善。其中涉及 Windows API 函数调用 的代码你可以从 VB5.0 系统的 API 函数查看器中复制函数定义内容,以避免出错。1.系统型表单 系统型意味着用户完成当前表单操作之前无法进行其它操作

45、,这对于编制系统口令保护界面尤为重要。如果你希望当前表单系统型表单,需如下定义 API 函数:Declare Function SetSysModalWindow Lib "User" (ByVal hWnd As Integer) As Integer然后调用: oldSysModal = SetSysModalWindow(Form.hWnd)2.获取驱动器类型代码如后:Declare Function GetDriveType Lib“ Kernel" (ByVal nDrive As Integer) As IntegerGlobal Const DRIV

46、E_REMOVEABLE = 2, DRIVE_FIXED = 3Global Const DRIVE_REMOTE = 43. 表单在对中本子程序功能使表单定位在屏幕中央,在表单中任何需要表单对中的地方只需加入一行代码:“ centerwindow.me 即”可成功调用。Public Sub CenterWindow(f As Form)f.Top = (Screen.Height .5) (f.Height .5)f.Left = (Screen.Width .5) (f.Width .5)End Sub4. 定义变量许多的程序员习惯于如下定义变量:Dim iNum, iNextNum,

47、iLastNum as Integer实际上只有最后一个变量被设为了整型, 前两个变量则是系统的缺省的 Variant 数据类型, 而 Variant 数 据类型可用来替换任何数据类型,显然对于精练的程序设计是不利的。 正确的方法如下:Dim iNum as IntegerDim iNextNum as IntegerDim iLastNum as Integer5. 使文本高亮本子程序使被触发的诸如文本,标签等控件的文本被选中Public Sub SetSelected()= 0= End Sub6. 关闭其它程序下面的代码可关闭内存中的其它程序title = "MyAPP&quo

48、t; ' 定义你需关闭的程序窗口的标题ihWnd = findWindow(0 , Title)ihTask = GetWindowTask (ihWnd)iRet = PostAppMessage(ihTask, WM_QU99v, 0, 0 )7. 文件存在否 ?本函数返回查找的文件是否存在。Function FileExist(Filename as string) as BooleanFileExist = Iif(Dir(Filename) <> "", True, False)End Function8. 主程序唯一用下面提供的代码作你的主程

49、序可防止应用程序的多重执行, 你应当将它放在确信需要它的代码模块内。Public Sub Main()If App.PrevInstance ThenBringWindowToTop frmMain.hwndElseLoad frmMainEnd IfEnd Sub 上面这些精悍的代码对于专业程序员来说非常有实用价值,希望你能从中获得启发。12、VB5.0 中实现字体闪烁效果用 Visual Basic 我们可设计出形形色色符合用户要求的应用程序,它确实是一种很好的用户程序开发工 具,可 VB 提供的基本控件中都没有闪烁属性设置,使应用程序界面缺乏“活性 ”,近期笔者设计软件封面时,就要求字体

50、不断地闪烁,为此,经反复分析、实践,最后终于成功地实现字体闪烁效果,现将设计 过程说明如下:(1) 创建一个新目标文件 (project1) ,并建立一个窗体 Form1 。(2) 在 Form1 上配置一个计时器控制 Timer1 、标签控件 Label1 、命令控件 Command1 。(3) 各控件属性设置:Timer1 的 Enabled 设置为 True;Label1 的 Caption 设置为需闪烁的字体: “江西省黎川县职业中专电脑室设计 ”、Font 设置字体及大小、 Backstyle 设置为 “0 Transparent ”;Command1 中的 Caption 设置为

51、“退出 ”。(4) 程序代码清单:Option ExplicitPrivate Sub Form_ Load()Label1.Top=850设置闪烁字体的显示位置Label1.Left=750Timer1.Interval=555设置字体闪烁间隔时间Form1.Windowstate=2End Sub利用计时器控件Timer有规律地改变字体颜色(Forecolor)Private Sub Timer1_Timer()Chc Label1,1,4,8End Sub'ChC过程是循环地改变字体颜色 (Forecolor)Sub Chc(Cont As Control,Color1 As I

52、nteger,Color2 As Integer,Color3 As Integer)If Val(Cont.Tag)=Color1 ThenCont.Tag=Color2ElseIf Val(Cont.Tag)=Color2 ThenCont.Tag=Color3ElseIf Val(Cont.Tag)=Color3 ThenCont.Tag=Color1ElseCont.Tag=Color1End IfCont.ForeColor=QBColor(Cont.Tag)End SubPrivate Sub Command1_Click()EndEnd Sub程序除标签控件外,还适用于许多 VB

53、 基本控件,实现诸多闪烁效果,例如:闪烁文本框、闪烁文件列表框等,极大丰富了 VB 应用程序界面,相当实用。13、VB 实用编程两例该程序通过 VB的多媒体控件 MCI32.OCX可以打开MPEG压缩文件(如VCD2.0版的.DAT文件)来 实现一个 VCD 播放器的设计首先必须确保在你的 Windows 系统中 SYSTEM.INI 文件关于 MCI 中需有 MPEGVideo 项(一般 Windows 95 和 Windows 98 中均有此项 )。次在 VB 中建立一个新窗口 ,加入多媒体部件 Microsoft Multimedia Control 5.0( 位于 C:WindowsS

54、ystemMCI32.OCX), 以及对话框部件 Microsoft Common Dialog Control 5.0( 位于 C:WindowsSystemCOMMONDLG32.OCX), 将 MCI 控件拖放至窗体 Form 上,调整其大小 ,并将窗体的 大小也调整为与其同样大小 ;将其九个按钮 (从左至右为 :Prev、Next、Play、Pause 、 Back 、Step 、Stop 、 Record 和 Eject) 中的 Record 按钮的 Visible 属性设为 False, 其余按钮中的 Visible 属性和 Enabled 属性 设为 True, 以上按钮的设置可

55、通过 MMControl 的属性栏内 "自定义 "项来设置。对话框控件的DefaultExt属性设为 .DAT,DialogTitle 属性设为 "打开多媒体文件 ",Filter 属性设为 "*.DAT,*.WAV",InitDir 属性设为 "G:MPEGAV"( 假设光驱盘符为 G)。源代码如下 :Option ExplicitPrivate Sub Form_Load()Dim Response As IntegerMMControl1.DeviceType = "MPEGVideo"C

56、ommonDialog1.ShowOpen ' 通过对话框选择不同的 VCD 文件MMControl1.filename = CommonDialog1.filename ' 选定要播放的文件MMControl1.Command = "Open"MMControl1.Command = "Play"End SubPrivate Sub Form_Unload(Cancel As Integer)MMControl1.Command = "close"End SubPrivate Sub MMControl1_BackClick(Cancel As Integer) ' 对 Back 按钮的功能改进Dim i As Integeri = MMControl1.Position - 100 ' 数值 100 为后退量 , 可适当调整If i < 0 Then MMControl1.From = 0Else MMControl1.From = iEnd IfMMContr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论