第3章 窗体和常用控件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)Spc函数:在Print方法或Print# 语句中,用Spc函数跳过n个空格。
【格式】Spc(n) 【功能】计算数值型表达式n的值,它给出 了显示或打印下一个表达式值之前插入的 空格数。Spc函数与输出项间可用分号隔开。 例如: Print Spc(10); "编号"; Spc(10); "姓名"; Spc(10); "工资金额"
将Unload事件过程的Cancel参数设置为 True可以阻止窗体的卸载。 当窗体被卸载后,在运行时添加到该窗 体上的任何控件都不能被访问,在设计时 添加到该窗体上的控件将保持不变。
当窗体被卸载后,一般对该窗体的任何 引用都会自动加载该窗体。当窗体被重新 加载时,在运行时对窗体属性的更改及对 窗体中各控件的更改将不被保留。
(1)绝对移动。绝对移动是指将对 象移动到指定位置,例如: MyNum.Move 200,260语句用来将 对象MyNum移动到坐标为(200, 260)的位置。 (2)相对移动。相对移动是指通过 指定从当前位置开始所移动的距离来 移动对象。
7.Refresh方法
【格式】object.Refresh 【功能】用来对一个窗体进行全部重绘。 其中,Object表示一个控件对象或窗体。 如果没有事件发生,窗体或控件对象的绘 制是自动处理的,并不需要使用Refresh方 法。但是,有些情况下希望窗体或控件立 即更新。在下列情况使用Refresh方法。
当Print方法与不同大小的字体一起使 用时,使用Spc函数打印的空格字符的宽度 总是等于以磅数为单位的选用字体内的所 有字符的平均宽度。
Spc函数与Tab函数的作用类似,可以 互相代替。但应注意,Tab函数从对象的 左端开始计数,而Spc函数只表示两个输出 项之间的间隔。除Spc函数外,还可以用 Space函数,该函数与Spc函数的功能类似。 要精确地把文本输出到窗体、图片框或打 印页上,可以使用对象的位置属性 CurrentX和CurrentY。
图3-3-1 “窗体操作”程序运行结果之一 图3-3-2 “窗体操作”程序运行结果之二
3.3.2 程序实现
1.设置对象的属性 2.程序代码
3.3.3 相关知识
1.窗体和其他对象的通用属性 2.窗体的专用属性
表3-3-2
属性名称 (名称) BackColor BorderStyle Caption
(5)如果Print的末尾没有加分号、 逗号或Tab函数,则每一次执行Print 后会自动换行,即光标移到下一行的 最左边。当再次执行Print时,将在 新的一行上显示表达式的值。
(6)如果Print的末尾加有分号、逗 号或Tab函数,则当再次执行Print时, 不一定在新的一行上显示表达式的值。 当使用分号时,下一个Print输出的 内容将紧跟在当前Print所输出内容 的后面;当使用逗号,则在同一行上 跳到下一个显示区段显示下一个 Print所输出的内容。如果只有Print 关键字,则将光标移到下一行,不输 出任何内容。
第3章 窗体和常用控件
3.1
【案例11】“窗体事件”程序
【案例12】“字符三角形1”程序
3.2
3.3
【案例13】“窗体变化”程 序
【案例14】“动画数字钟”程序
3.4
3.5
【案例15】“字符三角形2”程序
3.6
【案例16】“杀病毒游戏”程序
3.7
【案例17】“跟踪鼠标”程序 【案例18】“鼠标操作”程序
(1)在另一个窗体被加载时,显示 一个窗体的全部。 (2)如果需要窗体的显示内容被立 即更新时。 (3)如果需要将文件列表框和目录 列表框等控件对象的内容更新时。 (4)如果需要将Data控件对象的数 据结构进行更新时。
3.3 【案例13】“窗体变化”程序
3.3.1 学习目标
“窗体操作”程序运行后,在屏幕的 中央显示一个窗体,窗体的画面如图3-3-1 所示。
Enabled
ห้องสมุดไป่ตู้
Font
ForeColor
Height Icon Left MouseIcon
设置和获取对象的前景色(即文本颜色),可用调色板设置
设置和获取对象的高度,其值为整数,单位为Twip(缇) 用来设置窗体最小化后的图标 设置和获取对象左边与它的容器(对于窗体来说,其容器一般是指屏幕)左边的间距,其值为 整数,单位为Twip 用自定义的图标设置鼠标指针经过对象时的形状,如使用该属性,则MousePointer属性值必须 为99-Custom
【格式】Object.Print 表达式表 【功能】在执行Print方法时,首先计算表 达式的值,然后在指定的对象Object中, 输出表达式的值。在使用Print方法时,要 注意以下内容。
(1)Object是对象的名称。对象可 以是窗体(Form)、立即窗口 (Debug)、图片框(PictureBox)、 打印机(Printer)等。如果省略对象 名称,则在当前窗体上输出。 (2)Print关键字可以用符号“?”代 替,VB会自动将它翻译为Print。
(3)表达式表是由若干个表达式组 成,各表达式之间用分隔符逗号 (,)、分号(;)或者Tab、Spc 函数等。这些分隔符和函数可以在一 条语句中混合应用。
(4)Print的显示格式有分区格式和 紧凑格式两种。当各表达式用逗号作 为分隔符时,按打印区显示数据项, 每隔14列开始一个打印区。当各表达 式用分号作为分隔符时,输出格式为 紧凑格式,此时将在每个数值的后面 增加一个空格。如果数值为正数,将 把正号显示为空格。在Print中,可 以将逗号、分号和Tab、Spc函数混 合使用。
n为数值表达式,其值为一个整数,它 是下一个输出位置的列号,表示在输出前 把光标或打印头移到该列。通常最左边的 列号为1。如果当前的显示位置已经超过n, 则自动下移一行。当n大于行的宽度时,显 示位置为n Mod 行宽数,如果n<l,则把输 出位置移到第1列。当在一个Print中有多 个Tab函数时,每个Tab函数对应一个输出 项。
(2)Unload语句:Unload语句的格 式与功能如下。
【格式】UnLoad Object 【功能】从内存中卸载窗体或控件对象。 当卸载窗体或控件对象时,只是卸载窗体 或控件对象的显示部件,与该窗体或控件 对象模块相关联的代码依旧保存在内存中。 其中Object是要卸载的窗体、控件对象或 控件数组元素的名称。另外要注意以下几 点。
4.Show方法
【格式】Object.Show 【功能】Show方法的作用是显示Object对 象指定的窗体。
如果调用Show方法时指定的窗体还没 有加载,则VB会自动加载该窗体。如果调 用Show方法时指定的窗体被其他窗体遮挡 在后面,则该窗体会自动显示在最前面。 在代码中调用Show方法或者将窗体的 Visible(可见)属性设置为True,都可以 使窗体可见。
图3-1-1 “窗体事件”程序运行后的3幅画面
3.1.2 程序实现
1.对象属性设置 2.输入代码程序
3.1.3 相关知识
1.窗体事件
(1)Activate事件 (2)Load事件 (3)Unload事件
(4)Initialize事件 (5)Deactivate事件 (6)Resize事件 (7)Paint事件
2.窗体语句
(1)Load语句:Load语句的格式与 功能如下。
【格式】Load Object 【功能】将窗体加载到内存中。在加载窗 体时,首先自动将窗体的各个属性设置为 初始值,然后将执行窗体的Load事件过程。 其中Object是窗体的名称。
【功能】使用Load语句只能加载窗体,并 不能激活显示窗体。在初始化时使用Load 语句加载所有的窗体,而在必要的时候才 显示这些窗体。当一个应用程序启动时, 会自动加载并显示该应用程序的启动窗体。 当一个窗体尚未加载时,一般对该窗体的 任何引用都会自动加载该窗体。例如:使 用Show方法显示窗体时首先会自动加载该 窗体。
2.与Print方法有关的函数
为了使数据按指定的位置输出,VB提 供了几个与Print配合使用的函数。
(1)Tab函数:Tab函数与Print方法 一起使用,对输出光标进行定位。
【格式】Tab(n) 【功能】计算数值型表达式n的值,把光标 或打印头位置移到由数值型表达式n的数值 指定的列数,从此列开始输出数据。要输 出的内容放在Tab函数后面,可以用分号 隔开。 例如: Print Tab(10);"班级";Tab(20) "姓名"; Tab(30) "性别”
3.2 【案例12】“字符三角形1”程 序 3.2.1 学习目标 3.2.2 程序实现
1.对象属性设置 2.输入代码程序
图3-2-1 “字符三角形1”程序运行结果
3.2.3 相关知识
1.Print方法
Print方法在窗体、图片框、立即窗口、 打印机等对象中,用来显示文本字符串和 表达式的值。Print方法的格式和功能与早 期BASIC语言中的Print语句类似,其格式 如下。
续表
属性名称 MousePointer Picture 设置鼠标指针经过对象时的形状 用来设置对象的背景图像。单击“属性”窗口Picture栏右侧的“…”按钮,调出“加载图片”对 话框,利用该对话框,可选择适当的图像文件作为当前窗体的背景图像 设置和获取窗体首次显示时处于的位置,其值是一个整数 0:手动指定取值,初次显示时由Left和Top属性的值确定 1:处于所隶属的对象的中间;2:屏幕中间;3:屏幕左上角 设置和获取对象顶部的与它的容器(对于窗体来说,其容器一般是指屏幕)顶部的间距,其值 为整数,单位为Twip 设置和获取对象是否显示,它的取值是一个布尔值。其值为True时,不显示;其值为Flase时, 显示 设置和获取对象的宽度,其值为整数,单位为Twip 设置和获取窗体对象的可视状态(返回时为数值) 0或Normal:窗体以正常状态显示,默认值 1或vbMinimized:窗体以最小化显示,显示为一个图标 2或vbMaximized:窗体以最大化显示,窗体放大到最大尺寸 属性的含义
如果在Form_Load事件内显示信息, 必须使用Show方法或者把AutoRedraw属 性设为True。否则,当程序运行时什么都 不显示。
3.Cls方法
【格式】Object.Cls 【功能】将窗体(Form)、立即窗口 (Debug)、图片框(PictureBox)等内的 文本内容清除。它默认的对象是窗体。其 中,Object是窗体的名称。 例如:Form1.Cls、Cls、Picture1.Cls。 其中,Form1.Cls和Cls语句的效果是 一样的。
6.Move方法
【格式】Object.Move left,top,width,height 其中,Objec表示要移动的对象(例如:窗 体)。left、top、width和height四个参数 均为单精度数值,left参数不可以省略,其 他参数可以省略。
【功能】用来移动窗体。left表示窗体左边 框的水平坐标,即x轴坐标;top表示窗体 上边框的垂直坐标,即y轴坐标;width表 示窗体宽度;height表示窗体的高度。 使用Move方法移动对象,可以有两种 方法。
5.Hide方法
【格式】Object.Hide 【功能】Hide方法的作用是隐藏Object指 定的窗体对象。其中,Object是窗体的名 称。窗体从屏幕上消失的同时,窗体的 Visible属性自动设置为False。
使用Hide方法只能隐藏窗体,不能将 窗体卸载。如果调用Hide方法时该窗体还 没有加载,那么Hide方法会自动加载该窗 体,但并不予以显示。一个窗体被隐藏时, 不能访问该窗体中的任何控件对象。
窗体控件和其他控件的几个常用属性的名称和属性含义
属性的含义 设置和获取对象的名字。在程序中,对指定对象的调用是通过对象的名称来进行的。名称只能 在设计时设置,在程序运行中只能调用不能改变 设置和获取对象的背景颜色 用于设置窗体的边框格式,例如:无边框、双边框、固定边框等 设置和获取对象标题,对于窗体来说,它的值显示在窗体标题栏中 用于设置对象是否为活动的,能否对鼠标或按键事件产生响应。为True值(系统默认值)时, 可以操作,并对用户的操作作出反应,即对事件产生响应;为False值时,禁止用户操作,不发 生事件响应,此时窗体只具有显示文字和图形的功能,按钮对象呈暗淡色 设置文字的外观。其属性设置可通过“字体”对话框来进行。它除了决定显示在窗体上的文字 字体,还影响到窗体中控件的默认文字字体
3.8
3.9
【案例19】“按键ASCII码和KeyCode码值”程序
3.10
【案例20】“选择不同窗体”程序
3.11
【案例21】“选择不同工程”程序
3.1 【案例11】“窗体事件”程序
3.1.1 学习目标
“窗体事件”程序运行后,会自动调 出图3-1-1左图所示的提示框,表示窗体加 载后产生了Load事件;单击“确定”按钮 后,会自动调出图3-1-1中图所示的提示框 和窗体,表示产生了Resize事件;单击 “确定”按钮后,关闭提示框,只显示窗 体。