VB随机图像的魅力

2016-02-19 16:33 16 1 收藏

今天图老师小编给大家介绍下VB随机图像的魅力,平时喜欢VB随机图像的魅力的朋友赶紧收藏起来吧!记得点赞哦~

【 tulaoshi.com - 编程语言 】

VB提供了相当强的文字输出和绘图功能,可以在窗口或图形框中利用各种命令显示字体或绘制各种图形。灵活使用这些命令,不仅可以完成许多特殊的功能,而且可以为Windows的程序界面增加许多活力。下面用简单的例子演示VB中随机动画的风采。
  
  (一)、随机文字动画
  在VB中可利用Print命令进行字符串的显示工作,此命令一般只在当前位置显示字符串,但具体操作时可通过CurrentX和CurrentY控制字符串显示位置,通过FontSize控制字体的尺寸,通过ForeColor和BackColor控制字符的前景色和背景色。如果把上述的各项属性值均采用RND进行随机产生,即会形成随机字符显示效果。比如在一个图形框中显示一些新年贺辞,同时播放美妙的音乐,那将是一份极好的新年礼物。需要注意一点,由于字体互相覆盖,长时间显示会使窗口显得乱一些,所以最好按一定时间用“CLS"命令进行窗口清除。此处说明一下颜色的控制技巧,如果使用QBColor(Rnd*15)方式定义随机颜色,只能在16种颜色中随机产生,而采用RGB(Rnd*256,Rnd*256,Rnd*256)方式,则可以产生256*256*256种不同的颜色。具体操作方式请见文后Command1-Click事件中的代码。
  (二)、立体图形随机动画
  虽然直接利用绘图语句即可以实现简单的动画,但如果通过这些命令绘制成一定的立体图形,并实行随机动画操作,那将更具有特殊的艺术效果。比如下面两行简单的命令将画出一个具有强烈立体感效果的三角锥体,其中(M,N)为锥体的顶端坐标:
  
  Picture1.Line(m,n+2.5*i)-(m+i/2,n+2*i),RGB(180,180,180)
  
  Picture1.Line(m,n+2.5*i)-(m-i/2,n+2*i),RGB(80,80,80)
  
  如果把屏幕的底色置为暗黄色,在此窗口内的随机位置画出大小不一的三角锥,就像在黄色的沙漠上建起了无数的金字塔,具有一种特殊的情趣。具体操作方法请见文后程序中的Command2-Click事件中的代码。
  
  (三)、演示程序编制过程
  
  文后是一个完成上述随机动画的完整演示程序,需要在From1窗体中安放一个图形框Picture1及三个命令按钮Command1-3,然后把下面的代码填入相应的事件处。运行此程序之后,按下按钮1,则在图形框中进行随机文字显示。按下按钮2,则在图形框中随机显示三角锥体。按下按钮3,则退出程序。此程序在Windows95系统上VB5.0环境下调试通过。
  
  ′程序准备:
  PrivateSubForm-Load()
  Command1.Caption=″随机文字″
  Command2.Caption=″立体图形″
  Command3.Caption=″退出″
  Form1.ScaleMode=1
  Picture1.ScaleMode=1
  EndSub
  ′随机文字动画
  PrivateSubCommand1-Click()
  Picture1.Cls
  Do
  nn=Int(45*Rnd)
  Ifnn0Then
  Picture1.FontSize=nn
  EndIf
  Picture1.CurrentX=Rnd*Picture1.ScaleWidth-1000
  Picture1.CurrentY=Rnd*Picture1.ScaleHeight
  Picture1.ForeColor=RGB(Rnd*256,Rnd*256,Rnd*256)
  Picture1.Print″随机OK!″
  n=n+1
  Ifn50Then
  n=0
  Picture1.BackColor=QBColor(Rnd*15)
  EndIf
  DoEvents
  Loop
  EndSub
  ′立体随机动画
  PrivateSubCommand2-Click()
  Dimm,n
  Picture1.DrawWidth=1
  Picture1.BackColor=RGB(210,150,0)
  Picture1.Cls
  Do
  m=Rnd*Picture1.ScaleWidth
  n=Rnd*Picture1.ScaleHeight-500
  Fori=0ToRnd*800
  Picture1.Line(m,n+2.5*i)-(m+i/2,n+2*i),RGB(180,180,180)
  Picture1.Line(m,n+2.5*i)-(m-i/2,n+2*i),RGB(80,80,80)
  Nexti
  DoEvents
  Loop
  EndSub
  ′结束程序
  PrivateSubCommand3-Click()
  End
  EndSub->

来源:http://www.tulaoshi.com/n/20160219/1612420.html

延伸阅读
要处理一个图像,首先要获得该图像的像素值,而VB本身提供的PICTURE控件虽然可以打开很多类型的图片,但是它提供的那个POINT方法读取像素实在是太慢。而使用GetPixel这个API的速度也快不到哪里去,因为PIONT方法本身就是对于GetPixel的一个包装。 在VB中要快速获取一幅在PICTURE中打开的图像比较快速的方法是使用DIB方法,当然还有DDB...
VB的功能强大,应用范围广。VB是标准的面向对象编程语言可视编程,采用事件驱动的编程技术。VB含有大量的VBX(控件)。这是一种针对VB的已经编写好的程序,它们在VB中以各种可视的控制对象的形式出现,例如图形按钮,文字编辑框等等,用户根据自己的需要可直接使用,使编程就象使用积木搭建房屋一样简单。 ---- 在多媒体设计中,图像处...
----VisualBasic是Windows平台中最常用的应用软件开发语言,窗口图像缩放、滚动是图像处理、多媒体数据库等应用软件开发中的基本功能。本文将介绍如何用VB5.0实现地窗口图像缩放和滚动技巧,供读者在各种语言系统开发中参考。 ----一、获取图像 ----本文所介绍的图像缩放并没有对真正的图像进行缩放,而是复制一幅窗口图像的真实...
网上经常有人问如何把图像存入数据库中,原先我也是不得要领。经过多方指点和自己在开发过程中的摸索,终于解决这一问题。下面给出用VC,VB如何操作图像文件存取数据库的原码,帮助一些还没有掌握方法的朋友(均用ADO连接数据库)。 一、VC把一个文件存入数据库 CFile imagefile; if(0 == imagefile.Open("d:usermp.bmp",CFile::modeRead)) ...
前一阵有人在VB专家门诊中提出一个问题,如何在VB中实现打开图像文件的预览,虽然给出了300分的高分,回答着却寥寥无几。我在参照了DELPHI的源代码后在VB中实现了其部分图像预览功能,在中文WINDOWS98 SE下测试通过。 从MSDN中可以知道调用文件打开通用对话框需调用API 函数GetOpenFileName,原形如下: BOOL GetOpenFileName( LP...

经验教程

398

收藏

20
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部