实验十 常用控件(二)

合集下载

实验报告_常用控件使用

实验报告_常用控件使用
minute++;
if(minute == 60)
{
minute = 0;
hour++;
if(hour == 24)
{ hour = 0; }
}
}
mytimer =DateTime.Parse(string.Format("{0:D2} : {1:D2}: {2:D2}", hour, minute, second));
}publicstringConvertToString(DateTimetime)
{
stringtotalstring =string.Format("{0:D2} : {1:D2}: {2:D2}", time.Hour, time.Minute, time.Second);
returntotalstring;
{
textBox2.Text = comboBox1.Text;
textBox2.ForeColor =Color.White;
}
privatevoidcomboBox2_SelectedIndexChanged(objectsender,EventArgse)
{
textBox3.Text = comboBox2.Text;
textBox3.ForeColor =Color.White;
}
7.(日历)控件的(AfterUpdate)事件代码:
privatevoidaxCalendar1_AfterUpdate(objectsender,EventArgse)
{
label1.Text = axCalendar1.Year +"年"+ axCalendar1.Month +"月"+ axCalendar1.Day +"日";

3分钟带你掌握11个最常用的交互控件

3分钟带你掌握11个最常用的交互控件

3分钟带你掌握11个最常用的交互控件本文作者将来总结一下各个控件的特点,方便各位更好的理解这些控件。

之前的一系列文章,为大家介绍了iOS和Android规范中,各种弹出物(不要乱联想~~)的用法,罗列如下:警告框(Alerts)弹出框(Popovers,iOS独有)简易菜单(Simple Menus,MD独有)模态视图(Modal Views,iOS独有)确认弹框(Confirmation Dialogs,MD独有)全屏弹框(Full-screen Dialogs,MD独有)上拉菜单(Action Sheets,iOS独有)简易弹框(Simple Dialogs,MD独有)活动视图(Activity Views,iOS独有)底板(Bottom Sheets,MD独有)提示框(Toasts)既然各个控件都出过场了,也是时候让它们合个体了!弹出类控件比较表格(工具栏不是弹出类控件,之前没有介绍)观察上表,左边iOS这一栏,从警告框到活动视图,它们构成了一个听起来很高大上的词汇——模态(Modal,不是Model)。

iOS设计规范对模态的定义是这样神儿的:模态让用户聚焦到某一个任务、消息或者视图上而不能做别的事情,直到用户完成了当前的任务。

比如警告框,用户必须必须选择警告框里的一个选项,警告框才会消失,否则用户什么也做不了。

这个警告框,就创造了“模态”的体验。

模态示例1——警告框模态示例2——模态视图关于如何使用模态,苹果有以下几点建议:尽量少使用。

因为一般来说,人们使用应用的时候不是线性的,不是先做A再做B这样,是想到啥做啥。

而模态是线性的,比较强制。

苹果建议,只在某个任务特别重要,必须引起用户的注意、或者某个任务必须被完成才能继续使用应用、或者需要应用需要保存数据时,才使用模态这种设计。

使用模态时需要提供一个清楚明白的退出模态的通道。

需保证用户总能知道他们在一个模态中操作后的结果。

保持模态里的任务简单、简短、单一。

程序设计基础课程教学大纲

程序设计基础课程教学大纲

程序设计基础课程教学大纲(总7页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--《信息技术基础》(VB)实验教学大纲制定:审核:第一部分教学大纲说明一、课程性质、目的与任务《程序设计基础》是一门实践性很强的课程,主要内容包括Visual Basic的基本概念、Visual Basic的界面设计、Visual Basic语言基础、Visual Basic的基本语句、过程设计、文件操作、图形及多媒体处理、数据库操作等。

根据培养应用型人才的需要,本课程的目的与任务是使学生通过本课程的学习,了解开发Visual Basic应用程序的一般过程,建立程序设计的基本概念,编写简单应用程序,为今后专业学习中使用计算机打下良好的基础。

二、先修课要求大学计算机基础三、课程的教学要求基本概念和基本知识:面向对象程序设计(OOP),Visual Basic的集成开发环境(IDE),界面设计,Visual Basic语言基础,基本语句结构,过程,文件,数据库应用。

基本技能:算法实现、程序重点:常用控件的使用、三种基本结构、过程难点:程序算法、递归过程四、课程的教学方法和教学形式建议学生自主实验+教师指导第二部分教学过程建议一、课程教学总学时数、学分数课程教学总学时数为72学时,其中理论授课时间为36学时,上机实验为36学时。

二、实验学时分配第三部分实践教学环节《Visual Basic程序设计》是一门实践性很强的课程,实践教学是教学过程中必不可少的环节。

通过计算机实验和程序调试,使学生加深理解、验证巩固课堂教学内容;增强对程序调试的感性认识;掌握程序设计的基本方法;培养学生理论与实践相结合的能力。

一、课程实验为了进一步强化和巩固课堂所学的知识及实际的应用,配合课堂教学,设置以下课程实验:实验一 VB集成环境与应用程序创建初步(课前指导)【实验目的】1.了解VB集成开发环境的基本组成2.了解VB应用程序的创建及开发环境的选项设置3.掌握VB联机帮助的使用4.掌握VB集成开发环境的退出【实验内容】一、VB集成开发环境的基本组成1.启动VB并创建标准EXE工程2.熟悉VB集成开发环境3.熟悉窗体设计器窗口4.熟悉代码窗口5.熟悉VB集成开发环境的其他组成部分二、VB应用程序的创建及开发环境的选项设置1.设计应用程序的界面2.设计界面对象的属性3.编写程序代码4.执行并调试程序5.生成可执行程序文件三、VB联机帮助的使用四、退出VB集成开发环境实验一 VB应用程序的创建及编程基础【实验目的】1.学会创建一个简单的VB应用程序2.掌握VB的数据类型、常量、变量、运算符和表达式3.了解过程与函数的使用【实验内容】一、建一个简单的VB应用程序1.启动VB,创建一个标准EXE类型的VB应用程序2.设计应用程序的界面3.设计界面对象的属性4.编写程序代码5.保存工程6.执行并调试程序7.生成可执行程序文件二、VB的数据类型、常量、变量、运算符和表达式三、过程与函数的使用实验二 VB语言基础(一)【实验目的】1.掌握各种数据类型2.掌握常量与变量【实验内容】一、各种数据类型的定义与使用二、变量的定义实验三 VB语言基础(二)【实验目的】1、掌握表达式与运算符2、掌握VB常用的内部函数【实验内容】一、各种数据类型表达式与其运算符二、VB常用的内部函数的实验测试实验四 VB基本语句的使用(一)【实验目的】1、掌握顺序结构语句的使用【实验内容】一、顺序结构语句的使用实验五 VB基本语句的使用(二)【实验目的】1、掌握选择语句的使用【实验内容】一、选择语句实验六 VB基本语句的使用(三)【实验目的】1、掌握循环语句的使用【实验内容】一、循环语句实验七数组【实验目的】1、掌握数据的定义2、掌握不同类型的数据的区别3、了解控件数组的定义方法【实验内容】1、学会数组的定义2、掌握不同类型的数组的区别3、了解控件数组的定义方法实验八过程【实验目的】1.掌握通用子程序的定义和调用方法2.掌握函数过程的定义和调用方法3.明确子过程和函数过程的特点及区别【实验内容】一、Sub过程的定义和调用二、Function过程的定义和调用实验九递归调用、参数传递和变量作用域【实验目的】1.明确递归过程的编制特点,掌握通用过程的递归调用方法2.掌握实参和形参按值传递和按地址传递的不同用法,明确不同实参数据类型具有的不同传递形式3.明确过程级、窗体级和模块级变量的作用域和特点,能够根据具体情况使用全局变量、共用变量和局部变量4.掌握Sub函数调用时的两种格式:语句格式和命令格式【实验内容】一、递归过程二、参数传递实验十窗体和标准控件(一)【实验目的】1.掌握命令按钮、标签及文本框控件的使用方法2.掌握复选框、单选按钮及框架控件的使用方法【实验内容】一、命令按钮、标签及文本框控件的使用二、复选框、单选按钮及框架控件的使用实验十一窗体和标准控件(二)【实验目的】1.握列表框组合框控件的使用方法2.握滚动条和定时器控件的使用方法【实验内容】一、表框组合框控件的使用二、滚动条和定时器控件的使用实验十二窗体和标准控件(三)【实验目的】控件内容的综合与复习【实验内容】一、各种不同控件的使用综合实验十三对话框与菜单的设计【实验目的】1、掌握不同对话框的使用2、掌握下拉式菜单的设计方法3、掌握弹出式菜单的设计方法【实验内容】一、下拉式菜单的设计二、弹出式菜单的设计3、三、掌握不同对话框的使用实验十四文件的基本操作【实验目的】1.掌握DriveListBox、DirListBox和FileListBox控件的使用方法2.掌握文本文件的读写操作方法3.掌握随机文件的读写操作方法4.掌握二进制文件的读写操作方法【实验内容】一、DriveListBox、DirListBox和FileListBox控件的使用二、文本文件的读写三、随机文件的读取四、二进制文件的读取实验十五制作图形【实验目的】1.掌握VB提供的形状(Shape)控件和图像(Image)控件的使用方法2.掌握坐标和颜色的设置方法3.掌握常用的绘图方法4.能编制简单的动画程序【实验内容】一、形状(Shape)控件二、图像控件三、各种图形方法实验十六、十七数据库【实验目的】1.理解数据库的结构和表的结构2.掌握在VB环境中建立Access数据库和在数据库中添加表的方法通用子程序的定义和调用方法4.掌握数据控件(Data)的基本属性设置和使用方法5.掌握常用数据显示控件与Data控件的绑定方法6.熟悉SQL语言中常用语句的语法规则和使用方法7.了解直接运用Access创建数据库的方法8.能编制简单的数据库操作程序【实验内容】一、数据管理器二、数据控件三、结构化查询语言SQL四、数据窗体向导。

实验2:服务器控件的使用

实验2:服务器控件的使用
<asp:Button ID="Button1" runat="server"
onclick="Button1_Click" Text="Button" />
标准服务器控件
标签控件:Label 文本框控件:TextBox 按钮控件: Button(标准命令按钮) LinkButton(超级链接按钮) ImageButton(图像按钮) 选择控件:RadioButton(单选按钮) RadioButtonList(单选按钮组) CheckBox(复选按钮) CheckBoxList(复选按钮组) 列表控件:DropDownList (下拉列表) ListBox (列表框) BulletedList (项目列表) 图像控件:Image、ImageMap 容器控件:Panel
正则表达式验证控件 RegularExpressionValidator
自定义验证控件CustomValidator 验证组控件ValidationSummary
创建验证控件
验证控件的工作是监视另一个控件并验证其内容的有效 性,如文本框控件、单选按钮控件等。因此,首先要有一 个需要验证的对象,然后在其旁边拖入一个验证控件。验 证控件与一般的Web服务器控件的不同之处在于,一般情 况下,验证控件在页面运行时是不显示的,即这种控件对 于用户来说是不可见的。除非输入了未通过验证的信息, 在页面中才显示未通过验证的提示信息。当Web页面使用 验证控件进行验证时,可以通过Page对象的IsValid属性 判断验证是否通过,如果IsvVlid属性的返回值“True”, 表 示页面所有控件都已通过验证,否则表示至少有一个控件 没有通过验证。

常用控件

常用控件

实验九常用控件
一、实验目的
1.掌握常用控件的重要属性、方法和事件,熟悉它们的使用。

2.熟悉面向对象的可视化编程的框架。

二、实验内容
1、如图9-1所示,用单选按钮、复选框、框架等控件实现对文本框中文字的字体、粗体、下划线属性的设置。

在此基础上,用计时器控件实现在窗体的标题栏上显示当前系统的日期和时间信息,刷新周期为1秒种。

提示:单选框楷体Text1.FontName = "楷体_GB2312"
复选框粗体Text1.FontBold = True
2、如图9-2所示,用列表框实现两个列表之间的增加和删除操作。

3、设计一个小球在指定范围内任意弹跳,使用水平滚动条控件(hscrollbar)来控制小球跳动的速度,用水平滚动条的value属性获得滑块在滚动条中的位置,代表小球跳动的速度。

单击“play”按钮,小球开始跳动,移动滚动条调节跳动的速度;单击“stop”按钮,暂停小球的跳动;按“end”结束程序。

代码:
4、建立一个应用程序,该程序利用文件系统控件可以实现文件查找,如图所示。

提示:该题主要考察文件控件的常用属性及Change事件;
驱动器列表框、目录列表框、文件列表框三者之间的同步。

文本框显示文件的路径名
5、使用通用对话框进行属性设置。

常用控件

常用控件

常用控件 左边工具箱中的控件,都是编程中经常需要用到的控件,最常用的控 件我们已经学习了标签控件、文本框控件、命令按钮控件。 今天我们学习常用控件中的计时器(Timer)控件。
计时器控件的图标如右图。 双击计时器控件图标可建立一个计时器控件。 计时器可以按规定间隔时间触发一个事件,因此利用计时器可以很容 易实现动画效果、定期执行选定操作或计时功能。 注意:计时器只有在界面设计时才被看到,程序执行时是看不到的, 而且它的大小也不能更改,所以计时器在界面上的位置并不重要。
计时器控件的属性: 主要有两个属性: (1)Interval属性:设定计时器的时间间隔,取值范围为0~65535,单 位是毫秒(1秒=1000毫秒)。若设置为0,则表示不使用计时器功能; (2)Enabled属性:置计时器是否响应用户生成的事件:True表示计 时器能够响应事件,False表示不响应事件。
Private Sub Timer1_Timer() If n Mod 2 = 0 Then Label1.Caption = "欢迎光临" Else Label1.Caption = "WELCOME" End If n=n+1 End Sub
本课作业 利用计时器控件,实现文字的移动动画,让文字“欢 迎光临”从左到右不停循环移动,动画效果见演示。 提示:文字的移动实际上是文本框位置的移动。即文 本框的位置在不停的变化,这就需要用计时器控件来 触发文本框位置的不停改变。
计时器控件的事件: 计时器每隔指定时间所触发的事件是Timer事件,它是计时器控件的惟一 事件。如果需要触发Timer事件,计时器的Enabled属性必须设为True,并 且Interval属性的值要大于0。
计时器控件应用举例: 例:利用计时器控件在标签上每隔1秒就交替显示“欢迎光 临”和“WELCOME”文本。 程序代码如下: Public n As Long ' n为全局变量,统计执行次数

控件的使用实验报告

控件的使用实验报告

一、实验目的1. 熟悉常见控件的功能和使用方法。

2. 学习控件在应用程序中的布局和事件处理。

3. 提高编程实践能力。

二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 编程语言:C#三、实验内容本次实验主要使用Windows窗体应用程序进行控件的使用,具体内容包括:1. 控件的创建和添加2. 控件的属性设置3. 控件的布局4. 控件的事件处理四、实验步骤1. 创建Windows窗体应用程序(1)打开Visual Studio 2019,选择“创建新项目”。

(2)在“创建新项目”对话框中,选择“Windows窗体应用程序”,命名为“控件实验”。

(3)点击“创建”按钮,完成应用程序的创建。

2. 添加控件(1)在工具箱中找到所需控件,例如:文本框(TextBox)、按钮(Button)、标签(Label)等。

(2)将控件拖拽到窗体上,即可添加控件。

3. 设置控件属性(1)选中控件,在属性窗口中查看和修改控件的属性。

(2)例如,设置文本框的Text属性为“请输入内容”,设置按钮的Text属性为“提交”。

4. 控件布局(1)使用布局工具对控件进行布局,例如:使用水平布局、垂直布局、网格布局等。

(2)调整控件的大小和位置,使界面美观。

5. 控件事件处理(1)双击控件,打开代码编辑器。

(2)在事件处理函数中编写代码,实现所需功能。

(3)例如,在按钮的点击事件中,获取文本框的值并显示在标签中。

五、实验结果与分析1. 创建了包含文本框、按钮、标签的Windows窗体应用程序。

2. 添加并设置了控件的属性。

3. 对控件进行了布局,使界面美观。

4. 编写了按钮点击事件处理函数,实现了获取文本框值并显示在标签中的功能。

六、实验总结通过本次实验,我掌握了以下内容:1. 常见控件的功能和使用方法。

2. 控件在应用程序中的布局和事件处理。

3. 提高了编程实践能力。

在实验过程中,我发现以下问题:1. 对部分控件属性设置不够熟悉,需要加强学习。

实验十常用控件

实验十常用控件

实验十常用控件一.实验目的1.掌握命令按钮、标签、文本框、单选钮、复选框等常用控件的属性、方法和事件。

2.掌握滚动条、列表框、组合框和时钟控件的使用。

3.了解鼠标和键盘事件及其事件过程的编写。

4.综合应用所学的知识,编制具有可视化界面的应用程序。

二.实验要求通过实验范例的学习,掌握基本的常用控件,并根据实验内容要求编写完整的应用程序,学会单选框、复选钮、滚动条、列表框和滚动条等控件的使用。

三.实验范例1.下图10-1是一个学生成绩计算程序,具有如下功能:1)文本框中只能输入0~9之间的数字字符。

2)当焦点离开文本框时,能检查输入的成绩是否有效。

若成绩不在0~100之间,则清除原数据,并将光标移到该文本框。

3)若文本框左边的复选框未被选定,则文本框不可以输入成绩并且不参加计算总分和平均成绩。

图10-1 范例1程序运行界面步骤一:利用复选框、文本框、标签、命令按钮根据要求设计界面。

步骤二:编写如下事件过程Private Sub Form1_Load(……) Handles MyBase.LoadMe.KeyPreview = True '窗体优先处理键盘事件CheckBox1.Checked = TrueCheckBox2.Checked = TrueCheckBox3.Checked = TrueEnd SubPrivate Sub Form1_KeyPress(……) Handles Me.KeyPress '如果所按键不在0~9之间,则忽略If e.KeyChar < "0"Or e.KeyChar > "9"Thene.Handled = TrueEnd IfEnd SubPrivate Sub CheckBox1_CheckedChanged(……) Handles CheckBox1.CheckedChanged TextBox1.Enabled = CheckBox1.CheckedEnd SubCheckBox2和CheckBox3的CheckedChanged事件过程同CheckBox1,略。

实验01--常用控件及属性设置

实验01--常用控件及属性设置

实验1----常用控件及属性设置一、实验目的:1.熟悉的启动与关闭.2.怎样建立一个新的Windows应用程序.(特别注意文件名和保存地址)3.熟悉窗体和控件(标签框、文本框、按钮)的属性、方法和事件。

4.怎样建立多行文本、带滚动条的文本、只读文本和口令控件,并把口令文本的内容显示在另一个标签中。

5.怎样使用窗体的Load事件。

6.怎样使用代码设置窗体标题栏和按钮的文字信息。

7.怎样隐藏和显示按钮。

8.熟悉应用程序的开发步骤。

9.用不同的方法打开已保存的应用程序。

二综合实验一:(1)界面如图:图1 设计窗口运行后的效果(2)要求:1.TextBox1设置为单行文本,Text属性清空;TextBox2设置为口令文本,Text属性清空;TextBox3设置为多行的带双滚动条的文本,Text属性清空.2.Button1的Text属性设置为“显示密码”。

3.使用窗体的Load事件设置Button1和Button2的文本属性,分别为:”显示密码”和“修改留言本中的文字字体”;4.编写Button1的鼠标单击事件,在label4中显示TextBox1的内容,同时隐藏Button3。

5.编写Button2的鼠标单击事件,修改TextBox3的font属性为:"宋体", 14,FontStyle.Bold ;同时显示Button3。

6.编写Button3的鼠标单击事件,清空3个文本框,并将光标(焦点)重新置入textbox1 中;7.编写Button4的鼠标单击事件,关闭应用程序8.(选作)编写Button5的鼠标单击事件,隐藏当前窗体form1, 显示form2窗体。

同理,编写form2窗体中button1 的鼠标单击事件,隐藏当前窗体form2, 显示返回form1窗体。

(3)参考程序:Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadEnd SubPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Button1.ClickEnd SubPrivate Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.ClickEnd SubPrivate Sub Button3_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Button3.ClickEnd SubPrivate Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.ClickEnd SubPrivate Sub Button5_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Button5.ClickEnd Sub。

大学计算机基础实验指导教程电子版

大学计算机基础实验指导教程电子版

目录实验一熟悉Visual Basic 6.0编程环境 ....................................................................... 实验二Visual Basic语句基础 ............................................................................................ 实验三顺序结构 . (23)实验四选择结构(一) ..................................................................................................... 实验五选择结构(二) ..................................................................................................... 实验六循环结构(一) ..................................................................................................... 实验七循环结构(二) ..................................................................................................... 实验八循环结构(三) ..................................................................................................... 实验九循环结构(四) ..................................................................................................... 实验十一维数组程序设计 ................................................................................................. 实验十一二维数组程序设计 ............................................................................................. 实验十二控件数组和自定义数组程序设计 ..................................................................... 实验十三过程程序设计(一) ......................................................................................... 实验十四过程程序设计(二) ......................................................................................... 实验十五窗体和常用控件(一) ..................................................................................... 实验十六窗体和常用控件(二) ..................................................................................... 实验十七窗体和常用控件(三) ..................................................................................... 实验十八用户界面设计(一) ......................................................................................... 实验十九用户界面设计(二) ......................................................................................... 实验二十用户界面设计(三) ....................................................................................... 实验二十一图形操作 .........................................................................................................实验一熟悉Visual Basic 6.0编程环境【实验目的】(1)熟悉VB集成开发环境。

常见的控件介绍

常见的控件介绍

常见的控件介绍阅读⽬录常见的控件:1.⽂本输⼊框(TextBox)2.按钮控件(Button)3.下拉选框(DropList)4.⽇期/时间控件(Date/TimePicker)5.(图⽚、⽂件)上传控件(Upload)6.树形控件(TreeView)7.列表框(ListBox)8.多格式⽂本框(RichTextBox)9.Tab控件10.其他控件11.多浏览器兼容性问题以下是上述常⽤控件就样式、属性、功能、测试点等⽅⾯的总结1.⽂本框纯⽂本框(不带其他类型控件)主要分为密码框、⽂本框(TextBox)和多⾏⽂本框(TextArea)1.1密码框(1)样式:(2)属性:输⼊的⽂本会⾃动以⿊⾊圆点或星号加密显⽰。

(3)功能:⽤于输⼊密码(4)测试点(功能):1.字符长度2.是否区分字母⼤⼩写3.全⾓半⾓输⼊(数字、英⽂)4.是否允许空格字符5.输⼊的密码是否密⽂显⽰,是否可以“显⽰密码”6.安全性:是否可以复制、粘贴⽅式输⼊、复制粘贴后是否看到明⽂7.安全性:密码传输过程是否加密、数据库保存是否加密8.密码验证⽅式是否为⽐对模式。

9.登录后是否会⽤明⽂传递参数10.利⽤复制粘贴等操作强制输⼊不允许的输⼊数据11.同⽂本框测试点1.2⽂本框(1)样式:(2)属性:普通⽂本框,允许输⼊⽂本、数字等类型的字符(3)功能:⽤于普通⽂本的输⼊和显⽰,常搭配其他控件使⽤(4)测试点(功能):1.输⼊中⽂、英⽂⼤⼩写、数字、特殊字符,构建有效等价类和⽆效等价类2.全⾓半⾓输⼊(数字、英⽂)和显⽰3.输⼊框是否为必填项(空输⼊)4.是否可以输⼊空格以及对空格的处理(包括全⾓半⾓、中英⽂、⽂本⾸尾、⽂本间的空格)5.字符长度6.⽀不⽀持快捷键操作(Enter、Ctrl+“C/V/X/A/Z”复制粘贴剪切全选撤销等)7.数值型、⽇期型、时间型⽂本框的合法性校验8.利⽤复制粘贴等操作强制输⼊不允许的输⼊数据9.特殊字符(串):单引号、双引号、分号、Null、null、/、\、转义字符、</html>等10.JavaScript代码:<b>Hello</b>、alert("hello")11.html代码:<font>你好</font>、<script>alert(/xss/)</script>12.注⼊式Bug1.3多⾏⽂本框(1)样式:(2)属性:可以输⼊复数⾏的⽂本。

VB程序设计常用标准控件(二)

VB程序设计常用标准控件(二)

VB程序设计常用标准控件(二)5.5 滚动条与按钮控件5.5.1滚动条(ScrollBar)滚动条(ScrollBar)可分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar),其默认名称分别为HscrollX和VscrollX(X为1,2,3…),二者只是滚动方向不同。

1.常用的属性(1)Value属性Values是一个界于滚动条控件的Min属性和Max属性取值之间的整数,用来设置滚动块在滚动条中的位置。

(2)LargeChange属性(3)SmallChange属性(4)Max属性(5)Min属性2.常用的事件(1)Scroll事件用鼠标拖曳滚动条的滚动块时,此事件发生。

(2)Change事件移动滚动条的滚动块、单击滚动条或滚动箭头,使滚动块重定位时,或通过代码改变滚动条的Value属性值时,该事件产生。

Change事件与Scroll事件的区别在于:当滚动条控件滚动时Scroll事件一直发生,而Change事件只是在滚动结束后才发生一次。

【例5.5】滚动条ScrollBar示例。

设计一个程序进行坐标设置,界面如图5-10所示。

要求:①在文本框中输入0~100范围内的数值后,对应滚动条的滚动块会滚动到相应位置,同时在标签中显示当前坐标。

②当滚动条的滚动块的位置改变后,对应文本框中也会显示出相应的数值,标签中也会显示出当前坐标。

按下列步骤操作。

(1)窗体外观设计在窗体画1个标签、2个文本框、2个滚动条,设置控件的主要属性。

(2)事件代码设计“HScrollx”水平滚动条控件的“Change”事件过程代码如下:Private Sub HScrollx_Change()Labelxy.Caption = "当前坐标为(" + Str(HScrollx.Value) + "," + Str(VScrolly.Value) + ")"End Sub“VScrolly”垂直滚动条控件的“Change”事件过程代码如下:Private Sub VScrolly_Change()Labelxy.Caption = "当前坐标为(" + Str(HScrollx.Value) + "," + Str(VScrolly.Value) + ")"End Sub“Textx”文本框控件的“Change”事件过程代码如下:Private Sub Textx_Change()If IsNumeric(Textx.Text) And Val(Textx.Text) >= 0 And Val(Textx.Text)<= 100 ThenHScrollx.Value = Val(Textx.Text)ElseLabelxy.Caption = "无效坐标"End IfEnd Sub“Texty”文本框控件的“Change”事件过程代码如下:Private Sub Texty_Change()If IsNumeric(Texty.Text) And Val(Texty.Text) >= 0 And Val(Texty.Text) <= 100 ThenVScrolly.Value = Val(Texty.Text)ElseLabelxy.Caption = "无效坐标"End IfEnd Sub(3)运行程序5.5.2按钮(CommandButton)命令按钮可以控制一个过程的开始、中断和结束,当用户按下按钮时,引发一定的事件,从而执行相应的动作。

实验十 常用控件(二)

实验十  常用控件(二)

实验十常用控件(二)【实验目的】1.掌握滚动条的重要属性、事件和方法。

2.掌握图片框和图像框的使用以及两者的区别3.掌握计时器的重要属性、事件和方法。

4. 掌握形状控件的重要属性以及使用。

【实验内容】1、P237,实验E-6,窗体的标题栏显示“选课界面”,窗体上有两个列表框,左边是List1,右边是List2,其中List2中的列表项按字母顺序升序显示。

窗体下方有一个文本框,名为Text1。

请你:1) 写出程序中需要的属性设置。

2) 编写程序,要求单击List1中的某一项时,该项显示在Text1中;双击List1中的某一项时,该项从List1中删除,添加至List2。

当List2中的内容已满5门时,不允许再添加并提示“超过5门课程,不能再选了!”。

(要注意条件的放置位置问题)2、窗体上有一组合框Combo1,一文本框Text1,三个命令按钮,要求:1)程序一开始运行时,Combo1中有若干选项,命令按钮"确定"不可用2)选中Combo中某个项目,单击"修改",则将该项目复制到Text1中(可在Text1中修改),同时"确定"按钮可用3)单击"确定"将修改过的Text1替换组合框中原有的内容,同时"确定"按钮不可用.4)单击"添加",将Text1中的内容添加到组合框中【提示】修改组合框中选中的内容要通过代码来重新设置Combo1.List (Combo1.ListIndex)值的,而不能直接设置Text属性值。

3、在窗体的Label中每隔2秒显示“你好中国”(即每隔2秒显示一次标签)。

【提示】1)设置时钟控件的Interval值为适当的值,可以使程序每隔2秒,调用一次计时器的Timer事件。

2)每隔2秒显示一次标签,即标签的状态就应该是显示——隐藏---显示----隐藏,如此下去的,则应该是设置标签的什么属性可以达到效果呢?4、如右图所示,将滚动条的范围设置为0~1000,在文本框中输入一个数后按下“移动”按钮。

常用控件及其应用

常用控件及其应用
ENDCASE (4) 运行及调试表单,结果如图10.29所示。
1.3 列表框与组合框
列表框和下拉列表框(即 Style 属性为 2 的组合框控件)为用 户提供包含一些选项和信息的可滚动列表。在列表框中,任 何时候都能看到多个项;而在下拉列表中,只能看到一个项, 用户可单击向下按钮来显示可滚动的下拉列表框。
例10.8 创建一个学生成绩查询表单,其中学号使用列表 框显示,当用户单击某个学号时,显示该学生的相应成 绩。其主要步骤如下:
(1) 创建表单。 (2) 设置表单的数据环境为XSXI.DBF。 (3) 在表单中添加Label1标签对象,标题为“学号”。 (4) 在表单中添加List1列表框对象,设置其属性:
常用的列表框属性有:
(1) RowSourceType属性:确定 RowSource(列表框中列表项 的数据源)的类型。
(2) RowSource属性:指定列表中数据的来源。
(3) ColumnCount属性:指定列表框的列数。
(4) ListCount属性:指定列表框数据条目的数目。
(5) Selected属性:指定列表框中的某个条目是否处于选定状 态。
数据库原理及应用
常用控件及其应用
1.1 标签、文本框和编辑框 1. 标签控件
标签(Label)是一种常用的控件,用来显示文本内容的图形控件。它的特点 是:不能直接编辑,不能用Tab键选择。通常创建标签控件,用来保存不 希望用户改动的文本。常用的标签属性有: (1) Name属性:指定标签控件的名称。 (2) Caption属性:指定标签的标题文本。 (3)AutoSize属性:根据文本内容自动调整控件的大小。 (4)Alignment属性:指定文本在控件中的对齐方式。(0-左对齐,1-右对 齐,2-居中对齐) (5) WordWrap属性:指定标签上显示的文本能否换行。 (6) BackStyle属性:指定标签是否透明。

各种控件的详细使用介绍

各种控件的详细使用介绍

各种控件的详细使用介绍:常用属性,常用事件,常用的方法控件的分类(控件根据所属的基类,进行划分)根据是否能容纳其他控件,可以分为:容器类控件(包括:表单集,表单,表格,表格列,页框,页面,命令按钮组,选项按钮组,工具栏,容器控件)非容器类控件(包括:标签,文本框,编辑框,命令按钮,复选框,列表框,组合框,微调框,形状,计时器,线条,图像)另外一种划分方法,是根据控件和数据环境中数据源的关系进行划分,控件分为:绑定型控件是指内容可以和与数据环境后端的表、视图或查询中的字段和内存变量相关联的控件。

在该控件中输入、修改或选择的值将保存在数据源中,而数据源中值的改变,也将改变控件的值。

(复选框,文本框,编辑框,列表框,组合框,表格,选项按钮组,微调框,activex控件)非绑定型控件是指其内容不与后端的表、视图和查询中的字段或内容相关联的控件。

(命令按钮,命令按钮组,线条,标签,计时器,形状,图像)一、标签控件(Label)——非容器类控件,非数据绑定控件用以显示文本,显示提示信息。

标签上的显示文本由caption属性指定。

其中的文本在表单运行时不能被用户直接修改。

常用属性:常用事件:mousemove 鼠标移动事件mousedown 鼠标按下左键事件Click 单击事件mouseup 释放鼠标左键事件【范例】参考实验作业HomeWork7-1-1.scx。

二、文本框与编辑框——非容器类控件,数据绑定控件文本框——用以显示或编辑表中的非备注型字段的数据。

编辑框——用途与文本框相似,用以显示或编辑长字段或备注型字段的数据。

两者均为数据绑定控件,非容器类控件文本框的常用属性:•ControlSource 指定与文本框绑定的数据源•Value 指定文本框的当前选定的值例如:value=0 表示文本框中的数据设置为数值型,不能输入字母或汉字•PasswordChar用设定的字符来显示用户输入的值,而实际输入保存在value属性中。

程序设计-常见控件

程序设计-常见控件
允许用户同时选择多个选项的控件,常用于设置、筛选等场景。
单选框(Radio Button)
允许用户从多个选项中选择一个的控件,常用于问卷调查、表单填写等场景。
滑动条和滚动条控件
滑动条(Slider)
允许用户通过拖动滑块来选择一个范围内的值,常用于音量调节、色彩选择等 场景。
滚动条(Scrollbar)
控件分类及特点
文本类控件
如标签(Label)、文本框 (TextBox)等,用于显示和输入文 本信息。
选择类控件
如下拉列表(ComboBox)、复选框 (CheckBox)等,允许用户从多个 选项中选择一个或多个。
按钮类控件
如按钮(Button)、链接按钮 (LinkButton)等,用于触发特定操 作或导航。
图像类控件
如图片框(PictureBox)、图像列表 (ImageList)等,用于显示图像。
容器类控件
如面板(Panel)、分组框 (GroupBox)等,用于组织和包含 其他控件。
自定义控件
程序员可以根据需要创建自定义控 件,以满足特定需求。
02
输入类控件
文本框控件
1 2
功能描述
用于接收用户输入的文本信息。
控件属性与样式
自定义控件应提供丰富的属性和样式设置 选项,以便开发者根据需要调整控件的外 观和行为。
THANKS
感谢观看
04
控制类控件
按钮控件
按钮(Button)
用于触发特定操作的控件,如“确定”、“取消”等。
图标按钮(Icon Button)
带有图标的按钮,用于直观表示操作,如“保存”、“打印”等。
开关按钮(Toggle Button)

实习五__常用控件

实习五__常用控件

实习五常用控件一、实习目的1、掌握基本控件:命令按钮、标签、文本框、图片框、图像框、复选框、单选按钮、框架、列表框、组合框、滚动条、计时器的属性设置。

2、掌握基本控件:命令按钮、标签、文本框、图片框、图像框、复选框、单选按钮、框架、列表框、组合框、滚动条、计时器的事件过程。

3、掌握基本控件:命令按钮、标签、文本框、图片框、图像框、复选框、单选按钮、框架、列表框、组合框、滚动条、计时器的使用途径及方法。

二、实习内容1、1、命令按钮的使用(1)、命令按钮属性的设置a、在窗体窗口内放置命令按钮,从属性窗口选择命令按钮控件,将命令按钮的Caption属性设为‘前进’,Font属性设为‘隶书’、‘粗体’,字号为18,Width设为800,Height设为800,设置时注意窗体内的变化。

b、b、将命令按钮的Enabled、Visible属性设为False,运行程序观察结果。

c、c、设置命令按钮的BackColor、DownPicture、Picture属性,观察按钮变化,运行程序,点击命令按钮观察其变化,将Style属性设置为1-Graphical后再设置BackColor、Picture属性,观察按钮变化,设置DownPicture属性后运行程序,点击命令按钮观察其变化。

(2)、命令按钮的事件应用1、在窗体Form1上画一个标签,名称为Label1,标签的Caption属性为“计算机基础”BorderStyle属性为“1”;再在窗体上画两个命令按钮,名称为Command1和Command2,标题为“显示”和“隐藏”,验证下面的事件过程。

如图5-1图5-1Private Sub Command1_Click()Label1.Visible = TrueEnd SubPrivate Sub Command2_Click()Label1.Visible = FalseEnd SubPrivate Sub Form_Load()Label1.Caption = "计算机基础"End Sub(3)、设计程序,使用的控件有:一个文本框Text1、四个命令按钮,设计画面如图5-2,要求:点击“必修课”按钮Command1,在文本框内显示“VB必修课”;点击“选修课”按钮Command2,在文本框内显示“C语言选修课”;点击“改变字体”按钮Command3改变文本框内字体大小(10号~26号),点击“改变颜色”按钮Command4改变文本框内文字颜色(要求使用RGB函数,参数为0~255之间的任意值)。

实验06《常用控件》

实验06《常用控件》

实验6、常用控件实验课时:课内:4课时,课外:4课时实验目的:熟悉常用控件的属性、事件、方法,了解自绘控件(列表框)的概念及操作步骤,结合自定义类来处理业务,熟练掌握数据异常的处理。

常用控件简介:Visual Studio提供种类繁多的控件、组件。

工具箱中默认可以使用的Forms控件、组件就多达60来个。

除此之外,尚可以添加并使用微软或第三方提供的数以百计的.NET Framework组件、COM组件、WPF组件、Silverlight组件等。

显然,没有可能也没有必要所有的控件、组件全都了解得清清楚楚。

作为Windows Forms程序员,我们所要了解的,主要是隶属System.Windows.Forms命名空间的最常用的控件、组件。

具体到.NET Framework所提供的每一种控件、组件,其属性、事件、方法往往又数不胜数,乃至到了多如牛毛的地步。

而根据个人的经验,其中的很多属性、事件、方法根本就难得有机会使用。

因此,程序员要关注的只是并不太多的最常用控件、组件的并不太多的属性、事件、方法。

其中包括:1.Form窗体,Windows应用程序最基本的用户界面①属性Text:获取/设置窗体的标题文字ControlBox、MaximizeBox、MinimizeBox:获取/设置窗体是否显示控制按钮、最大、最小化按钮FormBorderStyle:获取/设置窗体的边框样式ShowInTaskbar:获取/设置窗体是否列示于Windows任务栏StartPosition:获取/设置窗体是否居中显示等WindowState:获取/设置窗体是正常、最大化还是最小化显示MinimizeBox、MaximizeBox:获取/设置标题栏是否显示最小、最大化控件MainMenuStrip:获取/设置窗体主菜单ContextMenuStrip:获取/设置窗体上下文菜单②事件Load:窗体装载后产生的第一个事件,常在该事件下编写代码来进行窗体的初始化工作FormClosing:窗体即将关闭但尚未关闭时产生该事件,常在此编码以进行必要的检查处理FormClosed:窗体关闭后产生该事件,常在此编码以进行善后处理③方法Show:将窗体对象显示为非模式窗体ShowDialog:将窗体对象显示为模式窗体(对话框)Hide:隐藏窗体对象Close:关闭窗体对象2.TabControl:选项卡控件,用于较多信息的分页显示或编辑①属性TabPages:获取控件中选项卡的集合SelectedIndex:获取或设置当前选定的选项卡的索引SelectedTab:获取或设置当前选定的选项卡Appearance:获取/设置控件外观HotTrack:获取或设置当鼠标移到控件的选项卡时选项卡是否更改外观ImageList:获取或设置选项卡上显示的图像②事件Selecting:即将离开某个选项卡前发生,可通过这样的语句阻止离开:e.Cancel = trueSelected:选择某个选项卡时发生③方法SelectTab:使指定的选项卡成为当前选项卡3.TextBox:文本框,常用于普通单行、多行文本文字的录入①属性Text:获取/设置文本框中的文字内容MaxLength:获取/设置文本框中最多可输入多少个字符MultiLine:获取/设置是否多行文本框ScrollBars:获取/设置文本框的滚动条样式SelectedText:获取/设置文本框当前选定的文本SelectionStart、SelectionLength:获取/设置文本框中当前选定的文本的起始位置及长度(字符数)PasswordChar:获取/设置当文本框用于密码输入应显示成的字符Enabled:获取/设置是否禁止用户介入控件(几乎所有控件适用)ReadOnly:获取/设置文本框是否“只读”CharacterCasing:获取/设置控件内容是否自动转换为大小写②事件TextChanged:文字内容变化时产生该事件Leave:光标离开控件时产生,可在此事件下检查用户输入的内容是否有效(几乎所有控件适用)③方法Focus:将光标设置于指定的控件(几乎所有控件适用)Clear:清除文本框中内容AppendText:在文本框现有文本后追加文本SelectAll、DeselectAll:选定、去选文本框中的所有文本Copy、Cut:复制、剪切文本框中已选定的文本Paste:将Windows剪贴板中的文本粘贴到文本框内Undo、ClearUndo:撤销或反撤销对文本框的上一次操作4.MaskedTextBox:带掩码的文本框,常用于电话号码、身份证号等定长文字的录入属性、事件、方法与TextBox类似,比较特别的有:①属性Text:获取/设置文本框中的文字内容,返回结果可能取决于Mask及TextMaskFormat属性的设置Mask:获取/设置文字录入所用的掩码(Mask)TextMaskFormat:获取/设置从文本框中返回的字符串是否要包括除用户输入以外的文字、提示等内容5.RichTextBox:富文本框,用于类似Word格式的.RTF文档的显示与编辑属性、事件、方法与TextBox类似,比较特别的有:①属性Text:获取/设置控件中的文本Rtf:获取/设置控件中的文本及RTF格式②方法LoadFile:将某个文件装入控件中SaveFile:将控件中的文本保存到指定的文件中其他属性、方法、:大多与多行TextBox相同,略boBox:组合框(下拉列表框),用于供用户从一系列选项中选择某一项,也可以直接输入新的项目①属性Items:获取/设置组合框中的可选项目,可以通过Add、Remove、RemoveAt及Clear方法在Items集合中添加、删除项目SelectedIndex:获取/设置组合框中当前选中的项目的索引号(0开始,-1表示未选定任何项目)SelectedItem:获取/设置组合框中当前选中的项目。

VB实验2 窗体及常用控件

VB实验2 窗体及常用控件

第15页 Visual Basic程序设计实验指导
实验2-2
目的和要求 预备知识
【分析】
要计算最少人民币的张数,应先计算最大面额 人民币100元所需的张数,然后再逐个计算50元、 20元等的张数。 计算 100元的张数,只需将工资数与 100 相除, 取商即可,余数再与50除,以此类推。
上一页
下一页
第12页 Visual Basic程序设计实验指导
实验2-1
目的和要求 预备知识
【实验步骤】
(1)界面设计 请参照图2-1所示的界面设计窗体。 添加控件时先添加框架对象,再在框架中添 加标签和命令按钮对象。 (2)完善程序代码 (3)运行工程并保存文件 运行程序,观察运行结果,最后将窗体文件保 存为F2-1.frm,工程文件保存为P2-1.vbp。
【分析】 根据题目要求代码应该写在列表框的 双击事件(DblClick)中。
上一页
下一页
退 出
第22页 Visual Basic程序设计实验指导
实验2-4
目的和要求 预备知识
上一页
下一页
退 出
【实验步骤】 (1)界面设计 请参照图2-4所示的界面设计窗体。 (2)完善程序代码 (3)运行工程并保存文件 运行程序,观察运行结果,最后将窗 体文件保存为 F2-4.frm,工程文件保存为 P2-4.vbp。
上一页
下一页
退 出
第19页 Visual Basic程序设计实验指导
实验2-3
【实验步骤】
目的和要求 预备知识
上一页
下一页
退 出
(1)界面设计 请参照图2-3所示的界面设计窗体。 (2)完善程序代码 (3)运行工程并保存文件 运行程序,观察运行结果,最后将窗体文件保存 为F1-3.frm,工程文件保存为P1-3.vbp。 修 改 : 将 定 时 器 的 时 间 间 隔 属 性 Interval 改 为 3000,观察运行结果。 思考:如果想让字幕从左往右滚动,应该如何修 改代码?
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十常用控件(二)
【实验目的】
1.掌握滚动条的重要属性、事件和方法。

2.掌握图片框和图像框的使用以及两者的区别
3.掌握计时器的重要属性、事件和方法。

4. 掌握形状控件的重要属性以及使用。

【实验内容】
1、P237,实验E-6,窗体的标题栏显示
“选课界面”,窗体上有两个列表框,左边
是List1,右边是List2,其中List2
中的列表项按字母顺序升序显示。

窗体下
方有一个文本框,名为Text1。

请你:
1) 写出程序中需要的属性设置。

2) 编写程序,要求单击List1中的某一项时,该项显示在Text1中;双击List1中的某一项时,该项从List1中删除,添加至List2。

当List2中的内容已满5门时,不允许再添加并提示“超过5门课程,不能再选了!”。

(要注意条件的放置位置问题)
2、窗体上有一组合框Combo1,一文本框Text1,三个命令按钮,要求:
1)程序一开始运行时,Combo1中有若干选项,命令按钮"确定"不可用
2)选中Combo中某个项目,单击"修改",则将该项目复制到Text1中(可在Text1中修改),同时"确定"按钮可用
3)单击"确定"将修改过的Text1替换组合框中原有的内容,同时"确定"按钮
不可用.
4)单击"添加",将Text1中的内容添加到组合框中
【提示】修改组合框中选中的内容要通过代码来重新设置Combo1.List (Combo1.ListIndex)值的,而不能直接设置Text属性值。

3、在窗体的Label中每隔2秒显示“你好中国”(即每隔2秒显示一次标签)。

【提示】
1)设置时钟控件的Interval值为适当的值,可以使程序每隔2秒,调用一次计时器的Timer事件。

2)每隔2秒显示一次标签,即标签的状态就应该是显示——隐藏---显示----隐藏,如此下去的,则应该是设置标签的什么属性可以达到效果呢?
4、如右图所示,将滚动条的范围设置为0~1000,
在文本框中输入一个数后按下“移动”按钮。

如果
文本框中是正数则滚动条向右移动相应刻度,但若
超过最大刻度则MsgBox提示“输入值太大”;如
果文本框中是负数则滚动条向左移,超过最小刻度则不再动,并MsgBox提示。

【提示】
1)输入正数向右移动,输入负数向左以后的意思是为了告诉大家,滚动条的Min 值必须是小于Max值
2)整个题目的意思是指假定滚动条当前位置的Value值为200,在文本框如果输入200,则滚动条的值应变为400;如果输入的值为-200,则滚动条的值应变为0.
5、窗体上添加一Shape形状控件,名为“Shape1”,两个名称分别为Command1,Command2的命令按钮,标题分别为“圆”和“红色边框”。

编写代
码,程序运行时,单击“圆”按钮则Shape控件显示一个圆。

单击“红色边框”按钮,则将Shape控件的边框颜色设为红色。

【提示】分别设置Shape控件的Shape属性和BorderColor属性
6、如右图所示,编写程序,使窗体中的两
个汽车图形能够相向运动直至相撞。

此时屏
幕弹出一个消息窗口显示“某年某月某日发
生交通意外”。

显示日期为当前系统日期。

【提示】根据两车的位置来判断是否相撞。

【提高题1】设计一个运行界面如下图所
示的程序,要求单击单选按钮、复选框、列表框或组合框时立即在文本框中显示相应的文字格式。

【提示】列表框中的字体可通过Screen对象的Fonts字符数组获得,组合框中的字号通过程序自动形成6~40磅值的偶数(详见书P113)。

【提高题2】窗体有一个矩形和一个圆,还有一水平滚动条和一垂直滚动条。

程序运行时,移动某个滚动条的滑块,
可使圆作相应方向的移动。

滚动条刻度
值的范围是圆可以在矩形中移动的范
围。

(如右图所示)。

【提示】水平滚动条和垂直滚动条的
Min和Max属性值与矩形的位置及大小
有关,最好通过代码在Form_Load事
件中设置。

【选作题】模拟Windows屏幕保护程序(如下图所示)。

可按下面提示分步实现(也可以以你的聪明才智,一步到位):
●文字从右往左运动,完全移出屏幕时同从屏幕最右边重新出现并继续左移。

●文字能像弹球一样,碰到窗体边缘时能反弹。

●每次碰到窗体边缘反弹时字体的颜色和大小随机变化。

【提示】移动控件的位置有两种方法(其中w和h分别表示水平方向或垂直方向移动的距离):
Label1.Left=Label1.Left + h
Label1.Top=Label1.Top + v
Label1.Move Label1.Left + h
Label1.Move Label1.Left, Label1.Top + v
重要提示:如果水平方向移动的距离为h,则当控件碰到窗体的边缘时,控件应该向相反的方向移动,即h=-h,垂直方向也一样。

相关文档
最新文档