vb程序设计实例

上传人:豆*** 文档编号:202026400 上传时间:2023-04-21 格式:DOC 页数:20 大小:104KB
收藏 版权申诉 举报 下载
vb程序设计实例_第1页
第1页 / 共20页
vb程序设计实例_第2页
第2页 / 共20页
vb程序设计实例_第3页
第3页 / 共20页
资源描述:

《vb程序设计实例》由会员分享,可在线阅读,更多相关《vb程序设计实例(20页珍藏版)》请在装配图网上搜索。

1、v程序设计实例 5-2 15:37 提问者:淘淘的某在| 悬赏分:20 浏览次数:168次编写程序,设银行定期存款的年利率为:1年期225%,2年期24,3年期为.70%,5年期为2.88%(不记复利)。今有元,5年后来使用,共有如下6中存法:存一次5年期;存一次年期,一次年期;存一次3年期,两次1年期;存两次2年期,一次1年期;存一次年期,三次1年期;存五次1年期.分别计算多种存法5年后到期的本息合计,如图所示-522 :6最佳答案rivat SubFm_Acivae()1年期225,2年期2.3,3年期为2.70%,5年期为8(不记复利)。今有X元,年后来使用,共有如下6中存法:onsx1

2、 AsDouble = 0.0225, x2 A Do .043, x3 A Dole 007, 5 As oube = 0288Dim x As Doule = Val(InutBo()Print 存一次5年期,5年后到期的本息合计; s(x, x5)Pint 存一次年期,一次年期,5年后到期的本息合计; ss(s(x, , x), 2, x2)Print 存一次3年期,两次1年期,5年后到期的本息合计; ss(s(ss(x, 3, x3), 1, x1), 1,x1)Print 存两次年期,一次1年期,年后到期的本息合计; (ss(s(x, 2, x2),2, x), 1, x)Print

3、存一次2年期,三次1年期,5年后到期的本息合计;ss(ss(x, 2), 1, ), 1, x1), 1, 1)Prit 存五次年期,5年后到期的本息合计; ss(s(ss(ss(s(x,, x1), 1, x1), 1, x1), , x1), , x1)dbPivte uncto ss(yVa a As Due, b A Ieger, c As obl)As Duble ss = a cbEn FuncionPrivae SubFormLoa()AutRedraw =rueEn b如下Dim r As SringPrivate Sub Command_Clic()sr= Txt1.SelT

4、exTex1.SlTxt= Command3.nald= TuEnd ubrivte b mnd2_Clck()sr= Tet1SelTetComad3.Enabled = rueEnd SubPrvteSub Command3_ck()et1.STe = strEndSuPivate Sub Comnd4_Click()EnEnd Srvae SbComman5_Cic()For.Showorm1.ideEd Sbrivate uorm_Lad()Command.Enble= Truommad.Enabl =TrueComand3.Enabed alseCommad4.Enabd=rund

5、S如何让ommad1功能键的目的转向txt1 内的内容我点的时候必须把ext1里面的内容去选定后才干进行操作如何让她自己选定为tet1的内容- -!上面的omad1剪切功能 mmad2复制功能Cmand粘贴功能 Coa4退出- -!三、运用VB三维面板控件设计流动条09-15 00:00:0 王金柱yesky VB提供了一种三维面板控件,运用这个控件可设计图形效果的立体界面,从而使应用程序的界面显得更生动、美观,该控件还可以设立多种形式的背景,然后在背景上显示多种形式的字符,令人感爱好的是,使用三维面板控件,还可设计我们常常在安装程序中看到的表达安装进程的流动条,并可显示进程比例,变化流动条的

6、颜色等。 一、简介属性 FooColor:拟定流动条的颜色,缺省为蓝色。 FodPect:显示目前过程如流动条进行的比例,参数变化时显示的百分数和流动条的面积变化,设为一整型值,取值范畴是0100。 Flohwpc:决定与否在三维面板控件上显示比例,是一种逻辑值。为Tr时显示,为lse时不显示。 Floodyp:表达顾客对三维面板控件的使用方式。可取值有 6个,如下所示: 0 缺省设立 1表达流动条方向从左到右 2 表达流动条方向从右到左 表达流动条方向从上到下 表达流动条方向从下到上 5表达使用指定的颜色从圆心向外画圆 二、流动条设计 如果在indows3?X下,工具箱中不存在三维面板控件,

7、可选择Fie菜单中的“Ad Fil”进行添加,在弹出的对话框中找到WindowsSystm目录,然后选定Thed?vbx文献即可,如果使用VB40,需在Too菜单中选择Custo onrols命令,选定Serid d Ctrols项,按OK按钮,可在工具箱中增长三维面板控件。 启动VB3?,在窗体中画一水平方向的长方形三维面板控件,按F,在属性窗口中设立其Nam为3d、Beellnner为2Rised、FlooTyp为、Floodshowct为True,再在窗体中画一种按钮Coand1,双击该按钮,键入下面的代码: SubComman1_Click() P3d?loodecnt=0 For N

8、=1To 10 I N$#62;00EN Et Subnd I P3d?Fodeent=N e I nub 按F5,运营该程序,点击Cmand按钮,即可看到流动条效果。 四、使用VB设计具有动感的命令图标栏-015 00:0:00 张嵘VB编程乐园p 我们在使用Word、Exel等Windos应用程序时,常常会见到在程序界面顶端有一行“立体式”图标按钮。当用鼠标按下某一种图标按钮时,程序就执行相应的操作。这一行“立体式”图标按钮一般就称作命令图标栏或工具条。命令图标栏一般提供某些最常用的命令,供顾客迅速地取用,并且它设计时采用了“立体式”按钮,操作时会产生凹下去和凸出来的“动感”,笔者这里就谈

9、谈如何用VB来建立具有“动感”的命令图标栏。 使命令图标具有“动感”是依托对命令图标的不同状态的图像切换来获得的。当鼠标按下时,图标显示为凹入状态的图像;当松开时,图标显示为凸出状态的图像。通过图像切换就使命令图标具有了“动感”,具体设计环节如下:1。一方面在窗体中创立一种图片框(ictureox),将其lign属性置为,使图片框固定在窗体上端,调节其宽度使其能安顿图像或命令按钮。 。在图标框内创立若干个图像框(IaeContrl),设立其utsieTu,Pice属性在程序运营中设立。 3。编写程序代码。这里假设某个命令图标凸出状态的图像文献名为rup.bmp,凹入状态的图像文献名为zdown

10、.mp。窗体装入时:Sub for-lad() Imge.pitureodpctur(zru.bmp) 命令图标凸出En sub鼠标按下时:SuIaelmusdown(Btton s Inege Shift A Iger, sinle,Y As single) ImageictureLoadicture(zdown.bmp) 命令图标如下:nd sub鼠标松开时:S magelmoseu(utton AsInteger,Shift AsInteger,X As sinle,Y ine) Iel.icte=Loaditu(zru.bp) 命令图标凸出nd sub以上只能使命令图标具有凹下去的功能

11、,但当在按鼠标按钮不放,并拖曳鼠标使光标移到外头,本来图标仍然处在凹下状态。要使其自动凸起,就要编写如下代码:Sub Igel-mouseup(uton s negr,hift Itege,X As singl, As sigle) SltCas Button Case IfX#6; r X$#2;Imagel.Width or Y#6;0 or Y$#6;Imael.Heihen Iagelpicure=oadpcure(zrup.bm) 凸出 es Imgel.pctre=Locture(own.bmp)凹入 End if E sectEnd sb 通过以上三环节就可以建立具有“动感”的命

12、令图标,若具有多种命令图标时,可通过创立图像控制数组来实现。M是常用的一种图像格式,也可以使用VB提供的丰富的不同状态的命令图标位图文献,它在VB的子目录btmaps中。 窗体顶端窗体底端五、实现窗体内部的左右移动分割区的宽度 Priate onstSPL99vEWIDTH = 5 最小移动宽度PrivateConst MIN =1 picLeft和piRigh的宽度相对于窗体的比例Privte Percen As Sigle正在拖动的标志Prvat ragFlg As Boolean 每次拖动后需要重排窗体上的控件 Priat SubRedrawMe() Di Nwidh A Sigle 忽

13、视窗体缩小的状况 I indoStae vbinimize Then Eit Sub ewWidth = (ScaleWdh S99vERWIDTH) * Pcet iclftve 0, , NewWdth, SaleHeit PirihtMv NwWidt SP9TERWIDT,0, Saledth - ewWdth SPL9vTRIDTH,SclHeight Ed Sub Pivte ub Form_oa() PiLeft和PicRigh的osePoiner=1Pecent. EndSub ivate u Fom_MousDown(Btton As nteger, Shift As Int

14、ger, X s Sigle, Y Asinl) DraFlag =True En Sub rive ub Form_MusM(utton AsInteg, hts Integer, X A ingle, Y As igle) 定义鼠标为vbieWE型ousPint= vbSizeE Prnt= X/SceWith RedraMnd Sub rivatSub orm_ousep(uttonAs Integer, hf As ntege, As igle, Ys inle) DaFg Fle osePonter = 0 此行语句实际没有起作用E Sub 六、封面的设计一、封面的设计是这样的,先浮

15、现一窗体,上面为你喜欢的图案。然后浮现一艘从左向右行驶着的船。屏幕上方从两侧分别移动出“欢迎”两个字。具体的制作措施是:把预先选好的背景图案装入封面窗体中,窗体命名为CA。再分别在三个图像控件(imae)中装入预先制作好的位图“欢”、“迎”和船型图案。然后把三个imag放置在初始位置(即图案刚在窗体浮现时的位置),并把它们的可视属性都设立为“lse”。程序如下: Sb Fom_load() cai.how 显示封面窗体 imi定义变量 img3.vsbleTe 船型图像控件浮现 a1:If ag3.Left 6120 Then 6120为船移动到屏幕右边的坐标,此值可以随需要选用 ima.Mo

16、ve mae3Lft+0移动此图像控件如嫌移动慢,可变化移动值 Gt 1 Ed Ifimag1visible=Tru “欢”字浮现 a2: I image.eft 542Then520为“迎”字移动到屏幕中间的位置 ime.Move imge2.Lft-50移动此图像控件 Goto a3 Ed fF i=1 T 100使窗体暂停一段时间时间长短可通过变化循环次数实现Ne imenul.Show 显示程序主窗体 nlodci 卸载封面窗体 Ed Sub二、简朴的“动画”点击一3D按钮后,屏幕体现光线平行进入一玻璃管,在管中有一散射中心,有的光线射到此中心后反射到管的初始端。程序如下: Sub C

17、omnd3D_Clck() Dm , j,k, , n 定义变量or i=208 5 显示出三条线,直到图像中的散射中心处,颜色为黑色 Line(208,760)(,20),G(0, 0, 0)Line(080,2860)(,2),B(,, 0) Line(2080,2660)-(,20),RG(0, 0, ) NxiFr =20 To480 Step1反射光线第一次射到管壁上 Line(55,276)-(,2760-(55)*.3333333),GB (255, 0,0) 反射光线,颜色为红色 Lne(520,2660)(2+(552j),2),RG(0, 0, ) Lin(55,286)-

18、(52+(550-j),2860),RGB(, , 0)没有遇到散射中心的两条光线,为黑色,继续迈进 x or k=4800 To360 Step-1反射光线第二次射到管壁上Lie(80,2520)(k,520+(480k)*.3333333),RGB(25,, 0)反射光线,颜色为红色 Lin(6240,6)(62(80-k),660),RGB(,0) ine(240,260)(40+(4800-),286),B(,0) 没有遇到散射中心的两条光线,颜色为黑色xtk For m3360 To 2080 Stp1反射光线第三次射到管壁上 Line(360,3)-(m,0(360m).33333

19、3),RGB(255, 0, 0) 反射光线,颜色为红色 NexmEnd Sub三、封底 封底的设计是:先浮现全黑的屏幕,然后从上至下逐渐拉出白底红字的“再会”的字样。先按规定在画板中做一种BM图,上面写着“再会”。然后在一名为BYE的窗体中加入一种全屏大的Pctuel,将BP图装入。程序如下: SbForm_od() mi 定义变量 bye.Show 封底浮现 Unload mnu卸载主菜单 l: If picture1.Hight 713 hen 130为图的高度picture.ight=pitue1.igh+0下拉屏幕GTo al Ed IfFr i=1 T 使窗体暂停一段时间Nex i

20、nd 结束所有操作 nd u 运用isul Bsic让命令行软件全面转向ios 众所周知,Window以其优美的图形界面,以便快捷的操作环境,已成为当今的主流操作系统,但由于其程序编写过于复杂,有诸多顾客常用的工具和小程序仍然只能运营于D环境下,导致ndows和DOS的频繁切换、使工作缺少持续性和效率低下。有什么措施可以解决这一问题呢?等待Fo Winds版本的面市,但仍会导致反复投资。据笔者观测发现,常用工具中有一部分为命令行软件,这些软件完全可以运用B改编成or Windos版本的。一方面由于B的简朴易用,使indows的界面设计变得异常简朴直观。因此可轻而易举的将命令选项、开关等转化为相

21、应的图形界面(如复选钮等)。另一方面由于VB为顾客提供了hll函数,也使得命令调用非常简朴。通过She其实你只做了个界面,核心还是DO下的本来工具。其函数格式如下: Shel(命令字符串) 命令字符串即具体执行的命令(如字符串“aj a:uerrj:uer”)有关字符串的操作可查阅有关书籍。至于窗口型类型缺省即可。最后只须注意,在el执行函数之前,有必要对命令行中有也许引起错误的参数进行检测,如在执行前检查顾客给的源文献与否存在等,以保证达到预期成果。笔者用VB改编的Arj for inws版本,其成果出乎想象。但愿人们能自己动手全面转向idows。 七、运用V产生屏幕变暗的效果想运用 VB

22、编程实现屏幕变暗的效果(像关闭 Win9 时的效果),只要按下面的环节来做: 1在 or1 中加入两个 Comandtton 和一种 itueBox. .在Fr1 的代码窗口中添加如下代码: Pvat Type RET Lft AsLon To s Lon ighsLng ottomAsLoEn TypePrivae clarFuton GetDCLi sr32(ByVlhw As Lng) As Long Pra Decar Fuon leaseDC Liue2 (Byahnd As Log,al hdc As Long)As Long Piate Dla Funon CratePtterr

23、uhLb gdi32 (ByVal hitmap s ong) Log Prive Declre utio PatltLi g32 (ByVal hdc A Long, Val x As Ln, ByVal y Long,ByVl nidh As on,yVa eghts Lo, ByValwRop A on) sLngPriae Delareunction eleeObjctib di2 (ByValhObject ALo)As Long rivae Declare Futon CrateBimapLi gd32(al nWdths Lon, yVl nHeght s Long, Byal

24、Plan A Long, ByVal nBiCun s Long, lpBit AsAn) AsLnPrivatecre Funcion Selectbec Lb gd32 (BVal hdc AsLg, Va jec As Long) ngPriateelae Fucton Inaidaeect Lib user32(Va hwndAs Lon, yl pctAs Lon, ByVal bErae As Lo)sLongPrive byts(1 To 16)As Byt PrathBitmaAs Log, rush A Log Privte hDesopnd As Lg PrivatSub

25、Comn1Cick() Dm p s Long, re s Log Di dAs Ln, wdth5s ng,height5 As Long hdc5 =GetC(0) idth5 Sre.With Sceen.TwipPerPix heigt5= SceeHegScree.TipsPerPro=&HA000C9 C Selctbect(hdc5, hBrs) re PaBlt(hc5, 0, 0,width5, heiht, rp) CallDeeeObect(Brush)re= ReesC(0, hc5) End SubPrivt SubComand_lick() i aaAsLonga

26、naldateRect(0, 0, 1) En ubivate u Form_Load() im ary Dim i s gry = Aray(H55, &H, &AA, H, &H55, &H, &A,&H0, &5, &H0,HAA,&, _ H55, &H0, AA, &H0) For i Tbybits() =ary(i - 1) Nextihia =CreateBap(, , , 1, bybits(1)Brsh=CretePatenus(hBitmap) Pictur1.oColor = RGB(0, 0, 0)Picure1.BckColo = RGB(255, 255, 25)

27、 Piture.ScaleMde =3Ed Sb 运营程序,按 Commad 就可以使屏幕暗下来,按 Cmad2恢复。 八、PrvatclreFunctinetDesktopWndwLiuse3()ALongPrivateDecreFunctnetDCLibue3(ValhwndAsLong)AsLogPriaeDeareFunctionStetchBlibd2_(ByahdAsong,_BylxAsLong,yalysLon,_ByVlnWidAong,ByValHeighLong,_ByValSrcCAsLong,_ByVaScAsong,_BalyrcALong,_BylnSrcWdth

28、AsLon,_ByVnSrcHeightAsLog,ByValdwRoAsLn)sorieSuForm_yDon(eyodeAsIer,ShiftsInteer)EnEnSubPvaSubForm_Load()sethehointrprperytofalesetthbodesofhomtononeForm1.AuoRea=TruFr1.aleMoPixeaGetDskpWindo()=GetD(a)tretcBFrm1hdc,0,0,Sreen.Wih,Screen.Hight,,_cree.eigt,Scren.With,-ScrenHigh,vbSrcCop12下一页九在V中实现闪动标题栏

29、摘要 在你的应用程序中,你也许会但愿将应用程序的标题栏进行闪动,以提示顾客进行某种操作,本文简介了如何使一种窗口的标题栏进行闪动。闪动标题栏 闪动一种窗口的标题栏意味着变化它的标题栏的外观,例如它从活动变为不活动,或是从不活动变为活动等等。只要你能在Vsul Basic中得到窗口的句柄,你就可以使用Wiow 应用程序编程接口(API)函数来使该窗口的标题栏进行闪动。函数FasWinows可以被用使一种特定的窗口闪动一次。要使用该函数,需要将如下的声明语句涉及在你的窗体的通用声明部分中: fWin32 hen Decae FuntioFlshWindow ib ser32 (yVa w AsLn

30、g, ByVal bnvrtAs on) Asongle DecarncionFlsWndow Lib ser (yVl hwn As nger, ByVl Invs ntger)Ategr #nd If该函数需要2个参数,第一种参数是要闪动标题栏的窗口的句柄,第二个参数用于指定是设立窗口的闪动状态,还是恢复其原始状态。如果该nvet参数非0,则表白窗口的标题栏被闪动,如果该参数为0,则表白窗口的标题栏被恢复为原始状态。该函数所返回的值用于指定调用该函数前窗口的状态,如果该返回值非,则表白窗口在调用该函数之前是活动的,否则,如果返回值为0,则表白调用函数前窗口是非活动的。当使用该lshWind

31、ow函数时,一种较好的措施是将标题栏闪动的频率设立为同脱字符(也即闪动的光标)相似,脱字符的闪动频率可以通过调用函数GetCretBinkTie来获得。要使用该函数,需要将如下的声明语句涉及在你的窗体的通用声明部分中:# W2 ThDelareFunction GetretBlinkTimeLib use32 ()As Long #le Declae Funcio GetCartlinTime Usr () sIteger En f 该函数返回用毫秒值表达的时间。 样例程序 1.在Vsal Basi中开始一种新的工程,采用缺省的措施建立Form1。 . 在Frm1上添加一种定期器控件,采用缺省

32、的措施建立Timr1。3. 将如下的代码添加到orm1的Fo_GoFous事件中: riva Sub ForGFocs() Tier1Enabled = Fls Ed Sub 4 将如下的代码添加到Frm1的Form_Loa事件中: rivae Su Form_oad() Tier1.Intrval = GearetBlinkTime() om.Shw En Sub 5. 将如下的代码添加到Tier1的Tie1_Time事件中: Prvate SubTime_Tie()uccess= lshindow(Form1.hnd, 1) Endu 6. 添加第二个窗体,采用缺省的措施建立om2。 7.

33、 将如下的代码添加到Frm2的单击事件中: iteSub rm_Clik()Form1.Tm.Ealed TreEd Sub 8.添加一种新的模块,采用缺省的措施建立Module1.Bas。将如下的代码添加到该模块的通用声明部分中: #f Win2The Dclar unctonFlasWdw ib user ( _ByVa hnd s Long, _ Val bnert As Long)s L clr Fucton GetretinkTimeLi ur ()s Longim Scss s Long Els Declare Function FlashWid Lib Uer(_ Val hwn

34、dAIneger, _BVal bInv As Integer) As Integr Dclae uncion GetCareBliTime Lb Usr () A nteger DimScess nteger#End f 通过单击F5键来运营该样例程序,单击F窗体,这时Frm窗体将处在非活动方式,其标题栏将会不断闪烁。单击Frm1使它它变为活动方式,则窗体的标题栏将不再闪烁 11、一组VB实用小程序用实现编程离不开函数调用及WndowsAPI函数的调用,如下是笔者收集的某些实用的小例程,它们可以直接用在你的实际编程中,也可以根据实际应用加以扩大完善。其中波及Windos AP函数调用的代码你

35、可以从VB.系统的PI函数查看器中复制函数定义内容,以避免出错。 系统型表单 系统型意味着顾客完毕目前表单操作之前无法进行其他操作,这对于编制系统口令保护界面尤为重要。如果你但愿目前表单系统型表单,需如下定义API函数: Dlare Futi SeydalWidow Li Us (ByVal hWdAs Integer) A tger 然后调用:olyoda= SSsMoalWndow(orm.Wd) .获取驱动器类型代码如后: eclarFuncionGetDrivTye i“ere (ByVa nDrie As Inegr)s Inteer lal ConsDIE_RMOEALE% =2,

36、 DRIVEIXED= 3 lalCntDRIVERMOTE% = 3表单在对中 本子程序功能使表单定位在屏幕中央,在表单中任何需要表单对中的地方只需加入一行代码: “enrwidow.me”即可成功调用。 Puic enteridow( s Form) fTop(Scree.Heiht* .5)-(f.Heih .) .et=(Sren.Widt * .5) - (.Widh * .5) Endub 4.定义变量 许多的程序员习惯于如下定义变量: DmiNum, iextum,iatNum anteger 事实上只有最后一种变量被设为了整型,前两个变量则是系统的缺省的Varint 数据类型,

37、而Varin数据类型可用来替代任何数据类型,显然对于精练的程序设计是不利的。 对的的措施如下: Dimiumas nteger DimiNetNus tegerDi iLasmas Integer 使文本高亮 本子程序使被触发的诸如文本,标签等控件的文本被选中 Pubi Sub eeected() ScreeAtveControlSar 0 Srn.Acivontol.SelLength =en(Sreen.ActiveContl.Text)nd Sub 6. 关闭其他程序 下面的代码可关闭内存中的其他程序 titl = MyAPP 定义你需关闭的程序窗口的标题 iWnd = fidido(0

38、&,Ttle) ihak = GeidowTk (Wnd) Ret = PsAppMesage(ihTak, _QU99v, 0,0) 7 文献存在否? 本函数返回查找的文献与否存在。 Fnction FExi(Fienam a trng)a Boolea ilexist Iif(Dir(Filenae) , True, Fale)End Fnton . 主程序唯一用下面提供的代码作你的主程序可避免应用程序的多重执行,你应当将它放在确信需要它的代码模块内。 ubcSu Main() If Ap.reIntaceThen BrngWndwTTop rmMainhwn Ele Load frmMa

39、nEndIf nd Sub 上面这些精悍的代码对于专业程序员来说非常有实用价值,但愿你能从中获得启发。 12、VB5.中实现字体闪烁效果用Viual Basic我们可设计出形形色色符合顾客规定的应用程序,它的确是一种较好的顾客程序开发工具,可B提供的基本控件中都没有闪烁属性设立,使应用程序界面缺少“活性”,近期笔者设计软件封面时,就规定字体不断地闪烁,为此,经反复分析、实践,最后终于成功地实现字体闪烁效果,现将设计过程阐明如下: (1)创立一种新目的文献(project1),并建立一种窗体orm。 (2)在orm上配备一种计时器控制Timer、标签控件Labl、命令控件Commad1。 (3)

40、各控件属性设立: Tie1的Eabled设立为True; Lel1的Captin设立为需闪烁的字体:“江西省黎川县职业中专电脑室设计”、Fot设立字体及大小、Bcksyl设立为“-Tansare”; Cmmnd1中的Catio设立为“退出”。 (4)程序代码清单: Otion Elct rvate Sub Form_oad() LblTop=85 设立闪烁字体的显示位置 Lel1Le=750 Timer.Intrval 设立字体闪烁间隔时间 Fm1.Windowae2 En Su 运用计时器控件Tme有规律地变化字体颜色(Focolor) Prvate Suimer1me() Chc Lb1,

41、1,4,8 End b C过程是循环地变化字体颜色(recor) Sub Cc(t s Cont,Clo1As Inte,Color2 AsIntegr,olor3As Ineger) If Val(Cont.T)Co1 Thn Conag=Color2 ElseIf Vl(Cot.Tg)=Colohen Cont.Tag=Colo3 ElsI al(o.Tg)=Colr3 Then ont.Tag=Clr1 Els on.g=or1 d If Cont.FoeCor=QColor(Cont.Tg) EndSub Prvat SCommnd1_Clic() End End ub 程序除标签控件

42、外,还合用于许多V基本控件,实现诸多闪烁效果,例如:闪烁文本框、闪烁文献列表框等,极大丰富了VB应用程序界面,相称实用。3、B实用编程两例该程序通过B的多媒体控件CI3OX可以打开MPEG压缩文献(如VCD2.0版的.DAT文献)来实现一种VCD播放器的设计 一方面必须保证在你的Windws系统中SYSTEINI文献有关CI中需有MPEGVo项(一般Windw 9和Wiows 98中均有此项)。 次在VB中建立一种新窗口,加入多媒体部件Microsoft ultimdia Contrl50(位于C:WindosSstmMCI32.),以及对话框部件croft Comon Dialg Cnro

43、50(位于:WnwsSystemCOMMNDLG32.O),将MCI控件拖放至窗体orm上,调节其大小,并将窗体的大小也调节为与其同样大小;将其九个按钮(从左至右为:Prev、Nxt、ly、ase、Back、Sep、Sp、Recr和ject)中的Recod按钮的Vise属性设为Fle,其他按钮中的Visble属性和Enad属性设为rue,以上按钮的设立可通过MMCntrol的属性栏内自定义项来设立。对话框控件的efuEt属性设为,DiagTitle属性设为打开多媒体文献,Fiter属性设为.DAT,*WA,ntD属性设为G:PE(假设光驱盘符为)。 源代码如下: Option Elicit P

44、rivate Sb Form_Load() imRespons AsInteer MControl1eviey MPGVde CommoDiaogShpen 通过对话框选择不同的VD文献 MMCntrolfine = CommonDilg1.filame 选定要播放的文献 MCntol1.mmand = Open MCoo1.ommand = lay E ubPvate S FormUload(ael AsIntegr) MMCotro1.Cond= clos EnSub iateSb MMContol1_BckClick(Cncl A Integer) 对ak按钮的功能改善 Dim i As

45、nter i =MMCtrlPsitio - 100 数值10为后退量,可合适调节 If i 0he MCntrol1.From = 0 Else MCntol1Fom = i En MMContrl1.Command = Play End Su Piae u Mntrol1_tplik(CacelAs Integer) 对Stp按钮的功能改善 Dim j As Integer j =MMotrol1Poiti + 100 数值00为迈进量,可合适调节 Ifj MMConrol1engtThen Contrl1.Fom = Mrl.ength Ese MMContro1.rom =j Endf

46、MMConro.mmandaEd Sub MI控件尚有诸多属性,如画面播放位置WnDisay属性等等,人们可参阅有关资料自行摸索。 调节好窗体的标题、图标、颜色等,然后编译成.EXE文献,你就可以在ndows下 拥有自己的VCD播放器了。 有时在一种窗口中浮现较多的控制件时,如果能向导式地建议顾客下一步该做什么,不失为上策。在Vual Basi的程序设计中,我们可以使用语句:object.SeFou使我们但愿的控件得到输入焦点,举个例子:在Form1中我们加入一种按钮Cmand1和一种文本输入Text1,双击按钮控件,然后键入如下代码:tet1.Seocs 再按5运营程序,您就会看到一单击按钮

47、,文本框会立即获得输入焦点。此外,我们还可以使用语句:Sndkeys TB使下一种控件获得焦点,但我们需要在设计时拟定各控件的Inex值。(在Propetie窗口中)让控件自己感知自己的工作已完毕,而积极将焦点让出,会使顾客觉得应用程序很聪颖,也减少了顾客出错的机会。 可是当焦点切换的两个控件相隔有一定距离时,上述的措施有时也局限性以引起顾客的注意,那么一种好的解决措施是将鼠标箭头也移到控件上。可惜,VB并不支持鼠标移动,那我们就求助A函数,A函数etCursrPos可让我们如愿。 下面是子程序oCurorOn,它可让鼠标移动到指定控件上方。下列代码请放在decaton段中: ype PoiT

48、I x As nteger As IntgeEnd ype Declare SubSCursrPo LibUr(yvalx As ntger,Byval y As Integr) DclareSu CleToScee LbUser(yval d As Inter,IpPont As ointP) DeclareFuncton GeParetLbUser(Byvalhwnd As Iteger) nteer 然后建立一种新的子程序(TN键入子程序名oveCursoOn),下面是子程序的代码: Sub MoveCuson(surce ACnol) Dim Pt As inTAI Dim haret

49、 As Inee p.=(Surce.LeftSource.Width/2)Screen.Twiperpie) p.y=(SoureTop+Surce.igt/)/ceen.Twipperpixel) harn=GtPant(soucewnd) CnTocren hparent pt CursorPos ptxt.y ndSub 使用该子程序很容易,例如我们想把鼠标移动到按钮Comnd1上,就可使用语句Move Curor On ommand1您会看到鼠标箭头已经指着按钮Coman1。 需要阐明的是,千万不要滥用该子程序。让鼠标自己满屏乱飞,我们的顾客会感到失去相应用程序的控制,这是违背我们的初衷的。在有数个输入框的窗口中(这在数据库应用程序中是很典型的),当顾客完毕第一种输入框的输入后,总爱习惯性的加一种回车,但愿输入焦点落到下一种输入框中(O中大多数应用程序是如此),可往往事与愿违,这一回车却触发了拥有eaul特性的按钮,成果不是关闭了目前窗口就是又蹦出另一窗口。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!