vb图形控件和图形方法
第8章VB图形设计

VB程序设计教程
沈美莉 马银晓 陈孟建 编著
10
第一节 坐标系统
3. 显示速度 显示速度是指显示图像或文字时的速度。由于显示分辨率和显示器的扫
描频率有关,显示分辨率高时,一个完整屏幕的像素点就增多了,所有像 素都要显示一遍,速度就要慢下来,这就需要提高扫描频率。 4. 颜色和灰度 颜色和灰度是衡量显示系统性能的又一重要参数。早期的显示卡MDA配单 色的显示器只能显示字符,仅有一般亮度和高亮度两种灰度,彩色显示系 统最多也只有16种颜色。而目前的颜色显示系统VGA,可达256种颜色甚至 更多。 5. 图形显示能力 图形显示能力是指屏幕上的每一个像素点可以设置成不同值的能力。早 期的单色显示系统MDA是字符型的,不支持图形显示,它的控制比较简单。 而随后出现的显示系统均能支持图形显示。
VB程序设计教程
沈美莉 马银晓 陈孟建 编著
9
第一节 坐标系统
三、图像分辨率
Visual Basic绘图中的点是以显示器像素为标准的,设置一个点 的颜色是设置窗体对应着的显示器的一个像素的颜色。
1. 显示器简介 显示器是计算机最主要的外部设备之一。显示系统由显示器和适
配卡(显示卡)组成,两者必须配对。 2. 显示分辨率 显示分辨率是指屏幕上有多少个基本像素点。显示系统的分辨率
功能:在<对象名>控件上,画出一条从( x1 , y1 )到( x2 , y2 )的线 段。其中[( x1 , y1 )]和[, <Color> ]为可选项。参数x和y既可以是整 数,又可以是小数。
运行该程序后,显示结果如下图所示。
vb6-常用控件

Check2 Option1 Option2
5.2 滚动条和Slider控件
Slider控件
n
Value Max
Min
Max SmallChange LargeChange
共同具有的重要属性: Max:最大值 -32 758~32 757 Min:最小值 -32 758~32 757 SmallChange 最小变动值,单击箭 头时移动的增量值。 LargeChange 最大变动值,单击空 白处时移动的增量值。 Value 滑块所处位置所代表的值。
文本框的换行输出: Private Sub Command1_Click() For i = 1 To 100 step 2 text1 =text1+format(str(i),”@@@”) Sum = Sum + i N=n+1 If n mod 5=0 then text1=text1+vbcrlf Next i Text2= Sum End Sub
If d = 0 Then X1 = p : X2 = p If d < 0 Then q = Sqr(-d) / (2 * a) p = CInt(p * 100) / 100 q= CInt(q * 100) / 100 X1 = p& "+" & q & "I " X2 = p & "-" & q & "I" endif Text4.Text = X1 Text5.Text = X2 endsub
滚动条的事件:
1.Scroll: 拖动滑块时会触发Scroll事件。 2.Change: Value属性改变时触发Change事件。 例1. 用一个文本框(txtSpeed)显示 滚动条(hsbSpeed)滑块当前位置所 代表的值。
VB_绘图_直线_圆_矩形_自由绘图_实例

VB 绘图要求:在VB窗口中,添加一个Picture控件,在该控件中任意点击,拖拽画图画直线Dim a As IntegerDim b As IntegerPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 Thena = xb = yEnd IfEnd SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 ThenPicture1.ClsPicture1.Line (a, b)-(x, y)End IfEnd Sub画矩形Dim a As IntegerDim b As IntegerPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 Thena = xb = yEnd IfEnd SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 ThenPicture1.ClsPicture1.Line (a, b)-(a, y)Picture1.Line (a, b)-(x, b)Picture1.Line (x, b)-(x, y)Picture1.Line (a, y)-(x, y)End IfEnd Sub画圆Dim a As IntegerDim b As IntegerPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 Thena = xb = yEnd IfEnd SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 ThenPicture1.ClsPicture1.Circle (a, b), Sqr((x - a) ^ 2 + (y - b) ^ 2)End IfEnd Sub自由绘图Dim a As IntegerDim b As IntegerPrivate Sub Picture1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 Thena = xb = yEnd IfEnd SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 1 ThenPicture1.PSet (x, y)End IfEnd Sub实例:设计一个窗口,效果如下图,要求设置四个单选框,分别为画直线、画圆、画矩形、自由绘图,选中任意一项,便可在左侧的picture控件中任意地方拖拽出相应的图形。
VB图形和绘图操作

VB图形和绘图操作VB图形和绘图操作⼀、坐标:X值:是沿X轴的位置,窗体中最左端是缺省位置0Y值:是沿Y轴的位置,窗体中最上端是缺省位置0X,Y的值可以⼩于0,也可以⼤于容器宽度或⾼度⼆、坐标值的刻度:缺省使⽤缇(Twip)为测量单位. 「Twip」中⽂译为"缇",是⼀种和屏幕⽆关的长度单位,⽬的是为了让应⽤程序元素输出到不同设备时都能保持⼀致的计算⽅式。
打印机的⼀个点,即我们说的“磅”,相当于20个 Twips,⼀英吋相当于 1440个Twips, ⼀公分(厘⽶)则相当于567 Twips ,也就是说,如果屏幕上某个对象的长度是1440 Twip的话,将会印出⼀英吋来。
由于我们在屏幕上操作时会习惯⽤「像素」(也就是我们常说的屏幕分辨率DPI,系统可以设置各种DPI值),所以我们直接输⼊数字时必须再将「像素」换算成「Twip」。
当DPI设置为96时(系统默认值),1个像素=(1/96)*1440=15 Twip;当DPI设置为120时,1个像素=(1/120)*1440=12 Twip。
当DPI为96时,如果希望窗体的⾼是「400」像素,宽是「300」像素,属性的设定值就是: Height=400×15=6000 Twip,Width =300×15=4500 Twip.在VisualBasic应⽤程序中,屏幕(Screen)是⼀个对象。
其Width和Height属性以Twip为单位反映出屏幕的宽度和⾼度。
⽽TwipsPerPixelX和TwipsPerPixelY这两个属性只与硬件有关,⽽与屏幕上可设定的分辨率⽆关。
将Width除以TwipsPerPixelX可以计算出屏幕的⽔平分辨率(像素数),同样将Height除以TwipsPerPixelY也可以计算出屏幕的垂直分辨率。
要想保持⼀个窗⼝或是控件的物理⼤⼩不变,只要计算出设计时的分辨率与实际运⾏时的分辨率的⽐值,然后根据这个⽐值来调节窗⼝和其中的控件的⼤⼩和相对位置,以及显⽰的字体尺⼨,就可以保持同⼀应⽤程序的窗⼝在不同的系统下的物理外观(当然在不同尺⼨的显⽰器上只能保持⽐例不变,物理⼤⼩还是不同的)。
vb6.0图形控件和图形方法

➢ 图片框控件的Aling属性值为1,则图片框贴紧 到窗体的上边;Align属性值为2,则图片框贴 紧到窗体的下边。
阶段2 图片框控件常用方法
一.Print方法
图片框可以用来显示Print方法输出的文本,格式如下: 图片框控件名称.Print输出表
本章导读
VB6.0具有丰富的图形图像处理能力,它提供 了一系列基本的图形函数、语句和方法,支 持直接在窗体或控件上产生图形、图像并对 之加以处理。本章将介绍VB所提供的图形控 件和图形方法。
任务1 VB坐标系
阶段1 容器坐标系 阶段2 改变容器坐标系的
Scale方法 阶段3 坐标刻度
阶段1 容器坐标系
任务2 图片框控件
阶段1 图片框控件常用属性 阶段2 图片框控件常用方法
阶段1 图片框控件常用属性
一.Picture 属性(字符串类型)
⑴ 设计时选取:在界面设计时,选中该图片框控件属性 窗口中该属性,在弹出的Load_Picture对话框中选择所 要显示的图片文件,相应的图片随之被加载到图片框中。 ⑵ 运行时装入:程序运行时,可用LoadPicture函数装 入图片到图片框控件中。
ScaleWidth属性:该属性值为容器自身的宽度值。 ScaleHeight属性:该属性值为容器自身的高度值。 CurrentX、CurrentY属性:分别表示当前点在容器内
的横坐标、纵坐标。
阶段2 改变容器坐标系的Scale方法
➢容器坐标系中,坐标系刻度单位的默认值为 “缇”(1缇≈0.01764毫米),容器的最小坐 标值为左上角坐标,容器的最大坐标值为右下 角坐标。 ➢利用Scale方法可以改变原点的坐标并随之改 变最大坐标值。 格式:容器名.Scale (x1,y1)-(x2,y2)
VB常用控件属性

组合框基本属性Name、Height、width、Top、L,eft、Enabled、Visible和Index组合框与列表框具有相同的属性:List、ListIndex、ListCount、Selected、Sorted、Text、MultiSelect,Style 等。
组合框的特有属性:组合框有3种不同的样式,其下拉式组合框、简单组合框可输入内容,但必须通过AddItem方法加入。
组合框的风格是由Style属性值决定的。
设置组合框的Style属性可以选用组合框的3种样Style属性为0时,是下拉式组合框,默认状态;Style属性为1时,是简单组合框;Style属性为2时,是下拉列表框。
(1)下拉组合框下拉组合框,显示在屏幕上的仅是文本编辑器和一个下拉箭头。
与下拉列表框相似,蛋下拉列表框可以通过输入文本的方法在表项中选择。
可识别dropdownclickchannge事件。
(2)简单组合框简单组合框,列出所有的项目供用户选择,右边没有下拉箭头,列表框不能收起和下拉。
与文本编辑器一起显示在、屏幕上。
用户可在文本框中直接输入列表项中没有的选项,也可从列表中选择。
可以识别clickchannge事件。
(3)下拉式列表框下拉式列表框与下拉组合框相似,区别是用户不能输入列表框中没有的项,只能在列表中选择。
不能识别dbclick和changge事件。
可识别dropdownclick事件组合框拥有列表框和文本框的大部分属性。
组合框也有SelI,ength、SelStart和SelText这3个文本框才有的属性。
还有LOcked属性和Change事件等。
常用事件组合框响应的事件依赖于其Style属性。
⑴简单组合框(Style属性值为1),才有接收DblClick事件。
(2)下拉组合框(Style属性值为0)与下拉列表框(Style属性值为2),可接收Click事件和DropDown事件。
(3)下拉组合框和简单组合框,可以在文本区输入文本,当输入文本时,可以接收Change事件。
vb中常用控件及其功能

4.1 标签标签是VB中最简单的控件,用于显示字符串,通常显示的是文字说明信息。
但不能编辑标签控件。
使用标签的情况很多,通常用标签来标注本身不具有Caption属性的控件。
例如,可用标签为文本框、列表框、组合框等控件来添加描述性的标签。
还可编写代码改变标签控件的显示文本以响应运行时的事件。
例如,若应用程序需要用几分钟处理某个操作,则可用标签显示处理情况的信息。
4.1.1 常用属性标签的属性很多,下面介绍几个常用的属性。
(1)Alignment属性设置标签中文本的对齐方式。
其使用语法如下:Object.Alignment[=值]其中的“值”可以为0,1或2。
0(默认值)表示左对齐;1表示右对齐;2表示居中。
(2)AutoSize属性设置控件是否能够自动调整大小以显示所有的内容。
其使用语法如下:Object.AutoSize[=True或False](3)BackStyle属性设置标签的背景样式。
其使用语法如下:Object.BackStyle[=值]其中的“值”可以为0或1。
1(默认值)表示是不透明的;0表示是透明的。
(4)BorderStyle属性设置标签的边框样式。
其使用语法如下:Object.BorderStyle[=值]其中的“值”可以为0或1。
0(默认值)表示无边框;1表示单线边框。
(5)Caption属性设置标签的文本内容。
其使用语法如下:Object.Caption[=字符串](6)WordWrap属性设置标签的文本在显示时是否自动折行功能。
其使用语法如下:Object.WordWrap[=True或False]其中True表示具有自动折行功能;False(默认值)表示没有自动折行功能。
4.1.2 常用事件和方法一般很少使用标签事件,标签的方法中常用的只有Move,其基本语法如下:Move left,top,width,height其中left,top,width,height分别表示移动目的位置的坐标和大小。
大学计算机vb课程 第五章 常用控件【精选】

0--Unchecked:未被选定
False:未选定 1--Checked:选定
2--Grayed:灰色,禁止选择
Style属性
0--Standard:标准方式
1--Graphical:图形方式
Picture属性
未选定时的图标或位图
DownPicture属性 选定时的图标或位图
DisabledPicture属性 禁止选择时的图标或位图
选中。
Sorted(D):True:按字母顺序排列。False:按加入先后顺序排列。 Text(P) :被选中列表项的内容,如:
List 1.List(List 1.ListIndex) = List1.Text MultiSelect:0-None:禁止多项选择;
1-Simple:简单多项选择; 2-Extended:扩展多项选择。
常用事件
5.1 单选钮和复选框
有Click事件,因为单击时自动改变状态,故不需要编写过程。
【例5-1】
用单选按钮和复选框制作如图 所示窗口。当用户选择了“所在学 院”和“学习课程”后,单击“确 定”,则选择结果显示在下面的文 本【框属中性。设置】
默认名
Name属性
其它属性及设置
Option1 Option2 Option3 Check1 Check2 Check3 Check4 Label1
择的项目列出来,不 组合框有三种类型,由其Style属性值决定,Style
能直接修改项目。 可为0、1或2。
0——默认值。下拉式组合框。
1——简单组合框。
2——下拉式列表框。
常用属性
5.3 列表框和组合框
说明:P——只可在程序中设置或引用,D——只可在设计状态设置 List (PD) :字符型数组,存放列表框的项目,下标从0开始。 ListIndex(P):选中项目的序号,无项目被选定时为-1。 ListCount(P):项目的数量,ListCount-1是最后一项的下标。 Selected(P):逻辑数组。Selected(i)的值为True表示第i+1项被
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⒊ Align属性(整数0~4)
Align属性值为0,标准位置,图片框在原位置。 Align属性值为1,则图片框贴紧到窗体的上边。 Align属性值为2,则图片框贴紧到窗体的下边。 Align属性值为3,则图片框贴紧到窗体的左边。
Align属性值为4,则图片框贴紧到窗体的右边。
例5-1 图片的加载和复制。
蓝色的 亮度值
绿色的 亮度值
红色的 亮度值
18
⒈ 颜色函数
⑴ RGB函数
RGB函数是颜色函数中最常用的一个,其使用格式为: RGB(Red,Green,Blue) 其中:Red、Green、Blue分别表示红色的亮度值,绿色的亮度 值和蓝色的亮度值。取值范围都是0-255。
如将窗体Form1的背景色设置为红色,命令如下:
10
5.2.2
图片框控件常用方法
1. Print方法 输出文本,格式如下:
图片框控件名称.Print 输出表
2. Cls方法 除所装图片外,其他的所有文字、图形可用Cls方法擦除。 格式如下: 图片框控件名称.Cls
图片框控件还可以用Circle、Line、Pset、Point等图形方法,
在图片框上画出图形。图片框控件可以响应Change、Click、 MouseDown、MouseUp、MouseMove等常用事件。
功能:该方法在容器上(x,y)处以值为color的颜色画点。
(1)缺省容器则指当前窗体,缺省color则为容器前景色。 (2)容器的当前输出位置坐标为(容器名.CurrentX,容器 名.CurrentY),加Step关键字则在坐标(容器名.CurrentX+x, 容器名.CurrentY+y)位置画点。 (3)该方法所画点的大小,取决于容器的DrawWidth属性值。 DrawWidth用来设置绘图线的宽度,值以像素为单位,取值范 围是1到32767,缺省值为1即一个像素宽。设置该属性后,影响 Pset、Line和Circle等方法的输出效果。
Picture1.Line(-PI,0)-(PI,0)
Picture1.Line(0,-1)-(0,1)
8
6.2
6.2.1
图片框控件(Picture1)
图片框控件常用属性
⒈ Picture 属性(字符串类型) 标识将在图片框中显示的图形文件的文件名。 ⑴ 设计时选取
在界面设计时,选中该图片框控件属性窗口中该属性,在弹
6
⑷ ScaleMode属性值为4 容器坐标系的刻度单位为字符,每个字符宽6磅、高12磅。 ⑸ ScaleMode属性值为5
容器坐标系的刻度单位为英寸。
⑹ ScaleMode属性值为6 容器坐标系的刻度单位为毫米。 ⑺ ScaleMode属性值为7 容器坐标系的刻度单位为厘米。
7
2.自定义刻度 将ScaleMode值设置为0则采用自定义刻度。 用Scale方法设置坐标系统后,ScaleMode值自动变为0。反 之,ScaleLeft、ScaleTop、ScaleHeigt、ScaleWidth属性被 改变,ScaleMode值自动变为0,单位长度根据变化后的上述 属性重新确定。 例:分析下面的语句: Const PI = 3.1415926 Picture1.Scale(-PI,1)-(PI,-1)
则:左上角坐标为(-200,-100) 右下角坐标为(2000,1000) 窗体的坐标属性的值为: ScaleLeft = -200
ScaleTop = -100
ScaleWidth = 2200 ScaleHeight = 1100
5
5.1.3
坐标刻度
1英寸 = 1440缇
坐标刻度又称坐标单位,缺省情况采用Twip(缇)为单位。 1厘米 = 567缇
最大尺寸等于设定值。
15
⑶ FillStyle属性(整数0~7) 该属性用于指定图形的填充样式。取值及含义如下: • 0:实心填充,为缺省值。
• 1:透明,即不填充。
• 2:水平线填充。 • 3:垂直线填充。 • 4:斜线填充。 • 5:反斜线填充。
• 6:网格填充。
•Байду номын сангаас7:倾斜网格填充。
16
⑷ 其他常用属性 • BorderColor:设置边框颜色。 • FillColor:设置填充颜色。
24
⒉ 返回某点颜色值的函数Point 格式:Point(x,y) 该函数的返回值为点(x,y)的颜色值。
例 5-5 利用Pset方法绘制Cos(x)函数曲线。 Private Sub Form_Click() Dim i As Integer, x As Integer For i = 0 To 10000 PSet (i, 1200), vbRed Next i For x = 0 To 10000 PSet (x, 1000 * Cos(x * 3.1415926 / 1800) + 1200), vbBlue Next x 25 End Sub
21
Color参数的设置值及对应的颜色: 参数值
0 1 2 3
颜 色
黑色 蓝色 绿色 青色
参数值
8 9 10 11
颜 色
灰色 亮蓝色 亮绿色 亮青色
4
5 6 7
红色
洋红色 黄色 白色
12
13 14 15
亮红色
亮洋红色 亮黄色 亮白色
22
⒉ 使用预定义常量 预定义常量在VB 6.0内部定义,读者可以在视图菜单的“对象 浏览器”中选择ColorConstants查看所有这些常量,在程序中 不需要声明就可以直接使用。如: Form1.BackColor = vbRed ⒊ 直接赋值
如果知道具体的颜色值,也可以直接给颜色属性赋值,如:
Form1.BackColor=&HFF& Form1.BackColor=&HFF00& Form1.BackColor=&HFFFF00& '设置窗体背景色为亮红色 '设置窗体背景色为亮绿色 ‘设置窗体背景色为青色
23
5.5.2 图形方法
⒈ 画点方法Pset 格式:[容器.]Pset [step](x,y)[,color]
Form1.BackColor = RGB(255,0,0)
19
RGB函数采用红、绿、蓝三色原理,返回一个Long整数, 来表示一个颜色值。表5-1列出了一些常见的颜色以及这些颜 色的三色值。
颜 色 白色 黄色 洋红色 红色 青色 绿色 蓝色 黑色
红色值 255 255 255 255 0 0 0 0
该属性值为容器自身的高度值
⑸ CurrentX、CurrentY属性(数值类型) 分别表示当前点在容器内的横坐标、纵坐标。
4
5.1.2
改变容器坐标系的Scale方法
格式:容器名.Scale (x1,y1)-(x2,y2) 功能:改变容器原点坐标为(x1,y1),最大坐标为(x2,y2)
如执行语句:Form1.Scale (-200,-100)-(2000,1000)
出的LoadPicture对话框中选择所要显示的图片文件,相应的图 片随之被加载到图片框中。 ⑵ 运行时装入 程序运行时,可用LoadPicture函数装入图片。格式为:
图片框控件名.Picture = LoadPicture(filename$)
9
⒉ AutoSize 属性(逻辑类型) AutoSize属性值为True时,图片框的边界会随着所装入图片 的大小变化而变化。
End Sub
2
执行结果:
3
⒊ 容器(窗体、图片框)的坐标属性 ⑴ ScaleLeft属性(数值类型) 该属性值为容器左上角的横坐标,缺省值为0。
⑵ ScaleTop属性(数值类型)
该属性值为容器左上角的纵坐标,缺省值为0。 ⑶ ScaleWidth属性(数值类型) 该属性值为容器自身的宽度值。 ⑷ ScaleHeight属性(数值类型)
常用的刻度单位为:缇、磅和毫米。
⒈ 设置(选择)标准刻度 ⑴ ScaleMode属性值为1(缺省值) 容器坐标系的刻度单位为缇,1缇≈0.01764毫米≈0.05磅 ⑵ ScaleMode属性值为2
容器坐标系的刻度单位为磅,1磅≈0.353毫米
⑶ ScaleMode属性值为3 容器坐标系的刻度单位为像素,是显示器分辨率的最小单位。
17
5.5
图形方法
5.5.1 使用颜色
VB 6.0使用的颜色用一个长整型数(通常用16进制)表示, 如&HFFFF00&。其数值由3部分组成: (1) 右边的两位(00)代表红色的亮度值, (2) 中间的两位(FF)代表绿色的亮度值, (3) 左边的两位(FF)代表蓝色的亮度值。 每个亮度值的取值范围为:0-255,用16进制表示为:00-FF。 F F F F 00 显示青色
• 5或VbShapeRoundedSquare:控件形状为圆角正方形。
14
⑵ BoderStyle属性(整数0~6) 该属性定义图形边框样式。 • 0:透明,即无边框。
• 1:实线,为缺省值。
• 2:长虚线。 • 3:虚线。 • 4:点划线。 • 5:双点划线。
• 6:内插实线,如果BorderWidth属性值大于1,控件保证图形
Print Top, Left, Height, Width
Print Frame1.Top, Frame1.Left, Print Frame1.Height, Frame1.Width Print Text1.Top, Text1.Left, Print Text1.Height, Text1.Width
第 5章
5.1.1
图形控件和图形方法
5.1 VB坐标系
容器坐标系