vb程序设计实例
VB 串口通信程序设计典型实例

V B串口通信程序设计典型实例利用VB开发串口通信程序既可以使用MSComm控件也可以调用Windows API函数实现。
不过,只要MSComm控件可以被选用,我们推荐选择此控件实现,因为MSComm控件的功能和API调用一样强,甚至比它还好且使用起来更加简单。
在本章提供的串口通信程序设计中,除了PC与PC串口通信外,PC与单片机、PC与智能仪表、PC与PLC、PC与GSM短信模块等串口通信任务的实现均采用MSComm控件。
6.1 PC与PC串口通信程序设计当两台串口设备通信距离较近时,可以直接连接,最简单的情况,在通信中只需3根线(发送线、接收线、信号地线)便可实现全双工异步串行通信。
本设计通过两台PC串口3线连接,介绍了利用API函数和MSComm控件设计串口通信程序的方法,包括字符与文件的发送与接收。
6.1.1 PC与PC串口通信程序设计目的(1)掌握PC与PC串口通信的线路连接方法。
(2)利用MSComm控件和API函数实现PC与PC串口通信的程序设计方法。
6.1.2 PC与PC串口通信程序设计用软、硬件本设计用到的硬件和软件清单如表6-1所示。
表6-1设计用软、硬件6.1.3 PC与PC串口通信程序硬件线路图线路说明,在计算机通电前,按图6-1所示将两台PC通过串口线连接起来:计算机A 串口COM1端口的TXD与计算机B串口COM1端口的RXD相连,计算机A串口COM1端口的RXD与计算机B串口COM1端口的TXD相连,计算机A串口COM1端口的GND与计算机B串口COM1端口的GND相连。
图6-1 PC与PC串口通信线路6.1.4 设计任务利用MSComm控件和VB API函数编写程序实现PC与PC串口通信。
任务要求,两台计算机互发字符并自动接收,如一台计算机输入字符串“Please return abc123”,单击“发送字符”命令,另一台计算机若收到,就输入字符串“abc123”,单击“发送字符”命令,信息返回到第一组的计算机。
VB程序设计实例

VB程序设计实例1.银行存款计算器编写一个程序,可以计算并显示一个银行账户的存款利息。
用户可以输入初始存款金额、年利率以及存款年限。
程序将根据用户的输入计算出最终存款金额,并显示在屏幕上。
```vbModule BankDepositCalculatorSub Main'用户输入初始存款金额、年利率和存款年限Console.WriteLine("请输入初始存款金额:")Dim principal As Decimal = Console.ReadLineConsole.WriteLine("请输入年利率:")Dim interestRate As Decimal = Console.ReadLineConsole.WriteLine("请输入存款年限:")Dim years As Integer = Console.ReadLine'计算最终存款金额Dim finalAmount As Decimal = principal * (1 + interestRate) ^ years'显示最终存款金额Console.WriteLine("最终存款金额为:" & finalAmount)Console.ReadLineEnd SubEnd Module```2.温度转换器编写一个程序,可以将摄氏温度转换为华氏温度或将华氏温度转换为摄氏温度。
用户可以选择要进行的转换类型并输入相应的温度值。
程序将根据用户的选择进行温度转换,并显示转换结果。
```vbModule TemperatureConverterSub Main'用户输入转换类型和温度值Console.WriteLine("请选择转换类型(1-摄氏转华氏,2-华氏转摄氏):")Dim conversionType As Integer = Console.ReadLineConsole.WriteLine("请输入温度值:")Dim temperature As Decimal = Console.ReadLine'进行温度转换Select Case conversionTypeDim fahrenheit As Decimal = temperature * 9 / 5 + 32Console.WriteLine("转换结果为:" & fahrenheit & "华氏度")Case 2Dim celsius As Decimal = (temperature - 32) * 5 / 9Console.WriteLine("转换结果为:" & celsius & "摄氏度")Case ElseConsole.WriteLine("无效的转换类型")End SelectConsole.ReadLineEnd SubEnd Module```3.数字猜猜猜游戏编写一个程序,模拟一个数字猜猜猜游戏。
VB可视化程序设计实例——小时钟

VB可视化程序设计实例——小时钟本例专门针对程序设计初学者而设计,尤其适合第一次接触VB的学生学习。
通过用VB来设计如图3.39所示的时钟程序,初步感受一下可视化和面向对象的程序设计过程。
图3.39 时钟程序运行效果小时钟程序中包含窗体控件、标签控件和计时器控件等3个控件。
窗体控件是小时钟程序运行时的窗口,标题栏上的标题是“时钟”,在右上角有最小化、最大化和关闭按钮。
标签控件可以用来显示文本,本例中用来显示时间,如“9:48:57”。
计时器控件每秒一次把计算机的当前系统时间显示到标签控件中,使得小时钟不停地运行。
Array启动VB,首先显示“新建工程”对话框(图3.40),在选择“新建”选项卡中的“标准EXE”项后,单击“打开”按钮,进入VB编程环境,如图3.41所示。
图3.40 “新建工程”对话框图3.41 VB 可视化编程环境 除了标题栏、菜单栏和标准工具栏外,编程环境中还有工具箱、窗体和属性等窗口。
双击工具箱(图3.42)中的标签控件,在窗体Form1中放置可以显示文本信息的标签控件Label1,见图3.43。
时钟的时、分和秒以后就显示在Label1中。
拖曳Label1可以移动它,拖曳它的八个控制点,可以改变它的大小。
图3.42 工具箱 图3.43 label1控件 图3.44 计时器控件双击工具箱中的计时器控件,在窗体Form1中放置计时器控件Timer1,见图3.44。
计时器控件以一定的时间周期,调用一个事件。
计时器控件只有在设计阶段出现在窗体上,程序运行时是不可见的,它的位置和大小无关紧要。
到目前为止,已经建立了窗体Form1、标签控件Label1和计时器控件Timer1等3个对象。
下面,将设置它们的属性。
窗体窗口图3.45 窗体Form1属性图3.46 窗体Form1 单击窗体Form1,属性窗口中出现Form1的属性,见图3.45。
在Caption(标题)属性内,输入“时钟”,Form1的标题栏就显示“时钟”,见图3.46。
vb小程序设计实例

VB小程序设计实例引言VB(Visual Basic)是一种广泛应用于Windows平台的编程语言,它具有简单易学的特点,因此非常适合初学者入门。
本文将以一个实际的VB小程序设计实例为例,介绍如何使用VB语言进行简单的程序开发。
项目背景我们的目标是创建一个简单的VB小程序,用于管理学生信息。
该程序将允许用户添加、删除和修改学生的基本信息,例如姓名、年龄和班级。
此外,用户还可以根据特定条件检索学生信息,并显示学生列表。
设计步骤1. 创建VB项目首先,打开Visual Studio并选择“创建新项目”,然后选择“Visual Basic”作为项目类型。
接下来,选择“Windows Forms应用程序”作为模板,并给项目命名。
点击“确定”按钮以创建新的VB项目。
2. 设计用户界面在VB中,用户界面是通过拖放控件来创建的。
在“工具箱”中选择所需的控件,例如按钮、文本框和标签,并将它们放置在窗体上。
使用控件的属性面板可以更改它们的外观和行为。
3. 编写代码现在,我们需要为各个控件添加相应的事件处理程序。
例如,当用户点击一个按钮时,我们需要执行特定的操作。
首先,选择要添加事件处理程序的控件,然后在属性面板中找到“事件”部分。
在相应的事件上双击以创建并打开处理程序。
4. 实现学生信息管理功能在代码中,我们需要定义学生类和学生信息管理类。
学生类包含学生的属性,例如姓名、年龄和班级。
学生信息管理类包含对学生信息进行增删改查的方法。
我们可以使用集合类来存储学生对象,并使用LINQ进行查询操作。
在事件处理程序中调用适当的方法以实现相应的功能。
5. 运行和测试程序在完成代码的编写之后,我们可以点击“运行”按钮来启动程序。
通过与程序交互,测试各个功能是否按预期工作。
如果发现问题,可以调试程序并对代码进行调整。
6. 部署和发布程序一旦我们满意了程序的功能和性能,我们可以将程序部署和发布给其他人使用。
在Visual Studio中,选择“生成”菜单并点击“发布”选项。
VB程序设计经典案例

'-------------------------------------------------' 题目:( 事件) 单击窗体。
' ( 响应) 求从100 到1000 之间所有是 3 的倍数的数之' 和,当和大于3000 时,停止计算并输出和。
请将结果输' 出到窗体上, 并存入所给变量SUM中。
使用for...next 语' 句完成程序'-------------------------------------------------Dim sum As Integersum = 0Dim i As IntegerFor i = 100 To 1000If i Mod 3 = 0 Thensum = sum + iEnd IfIf sum > 3000 ThenExit ForEnd IfNext iPrint sum题目(事件)点击窗体(响应)求1!+2!+3!+,,,,,,, +10! 的值,并在窗体上输出,结果存入变量L 中Dim l as longDim p as longp=1Fori=1to10p=p*il=l+pnext iprint l3 题目点击窗体求100 以内偶数的和,并将结果输出在窗体上,将结果存入变量sum 中Dim sum as integerFor i=0 to 100 step2Sum=sum+iNext iPrint sum题目:单击窗体求1+2+3+4+5+,,,,,, .+100 的值并将结果输入在窗体上,结果存入变量sum 中Dim sum as integerFor i=0 to 100Sum=sum+iNextPrint sum题目双击窗体求1+5+10+15+,,,,, ..+500 的和,并将结果输出在窗体上,将结果存入变量sum 中Dim sum as longSum=0For i=0 to 500 step 5Sum=sum+iNextPrint sum' 题目:( 事件) 单击窗体。
VB程序设计实例(全文)

VB程序设计实例(全文)在初中《信息技术》(福建教育出版社、《信息技术》教材编写组编著)八年级上册中,其中第二单元“VB程序设计基础”介绍了VB 的开发环境和有关基础知识,初步体验了顺序、分支和循环结构的程序设计,让学生深刻体会到了可视化程序设计的一般过程。
下面介绍本人在平时教学过程中对VB程序设计的一些体会和做法。
一、对教材中的“歌手大奖赛评分”程序进行拓展引伸,设计出比较智能多用途的程序1.程序界面设计。
新建一个标准exe工程,添加如表1所示的控件,并设置控件相应的属性。
(见附图1)表1“时钟的时针和分针重合的问题”程序用到的控件及其属性说明2.算法分析。
①请输入这次大奖赛的满分分数(如10分或100分等等)以及评委的人数,赋值给系统的公共变量public_min和public_i,这里要求事先定义好这两个系统的公共变量。
系统公共变量的定义方法:单击“工程”菜单,选择“添加模块”命令,在“Module1”框中输入Publicpublic_minAsSingle,public_iAsSingle即可。
②输入各评委的评分并计算。
如果输入的数值超过事先输入的满分的值,系统则提示:“出错啦,分数超出范围。
”在这里,用到了For…Next循环语句和输入函数InputBox(提示信息,标题,默认值,位置)和输出函数MsgBox“”。
③输出:去掉一个最高分和一个最低分后其余分数的平均分。
3.编写事件过程。
在“大奖赛评分系统”程序中,用户单击“请先输入满分和评委人数”按钮后,开始读入满分分数和评委人数。
二、下面针对教材的第103页和第107页的“创新活动”中的问题,给出比较详细的程序编写过程(一)教材第103页“创新活动”的问题。
在12小时制的时间中,在钟表正常走动的时候,有多少个时针和分针重合的位置?它们分别表示什么时刻(精确到秒即可)?请编写一个界面如附图2所示的“时钟的时针和分针重合的问题”程序,单击“开始计算”按钮,程序计算并显示出答案,单击“退出”按钮,结束程序运行。
vb程序设计实例

vb程序设计实例2009-5-22 15:37提问者:淘淘的某在| 悬赏分:20 | 浏览次数:1688次编写程序,设银行定期存款的年利率为:1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。
今有X元,5年以后使用,共有如下6中存法:①存一次5年期;②存一次3年期,一次2年期;③存一次3年期,两次1年期;④存两次2年期,一次1年期;⑤存一次2年期,三次1年期;⑥存五次1年期.分别计算各种存法5年后到期的本息合计,如图所示2009-5-22 17:06最佳答案Private Sub Form_Activate()'1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。
今有X元,5年以后使用,共有如下6中存法:Const x1 As Double = 0.0225, x2 As Double = 0.0243, x3 As Double = 0.027, x5 As Double = 0.0288Dim x As Doublex = Val(InputBox(""))Print "①存一次5年期,5年后到期的本息合计"; ss(x, 5, x5)Print "②存一次3年期,一次2年期,5年后到期的本息合计"; ss(ss(x, 3, x3), 2, x2) Print "③存一次3年期,两次1年期,5年后到期的本息合计"; ss(ss(ss(x, 3, x3), 1, x1), 1, x1)Print "④存两次2年期,一次1年期,5年后到期的本息合计"; ss(ss(ss(x, 2, x2), 2, x2), 1, x1)Print "⑤存一次2年期,三次1年期,5年后到期的本息合计"; ss(ss(ss(ss(x, 2, x2), 1, x1), 1, x1), 1, x1)Print "⑥存五次1年期,5年后到期的本息合计"; ss(ss(ss(ss(ss(x, 1, x1), 1, x1), 1, x1), 1, x1), 1, x1)End SubPrivate Function ss(ByVal a As Double, b As Integer, c As Double) As Doubless = a + a * c * bEnd FunctionPrivate Sub Form_Load()AutoRedraw = TrueEnd Sub如下Dim str As StringPrivate Sub Command1_Click() str = Text1.SelTextText1.SelText = "" Command3.Enabled = True End SubPrivate Sub Command2_Click() str = Text1.SelText Command3.Enabled = True End SubPrivate Sub Command3_Click() Text1.SelText = strEnd SubPrivate Sub Command4_Click() EndEnd SubPrivate Sub Command5_Click() Form2.ShowForm1.HideEnd SubPrivate Sub Form_Load()Command1.Enabled = TrueCommand2.Enabled = TrueCommand3.Enabled = FalseCommand4.Enabled = TrueEnd Sub如何让Command1~4功能键的目标转向text1 内的内容我点的时候必须把text1里面的内容去选定后才能进行操作如何让他自己选定为text1的内容- -!上面的Command1剪切功能Command2复制功能Command3粘贴功能Command4退出- -!三、利用VB三维面板控件设计流动条2000-09-15 00:00:00·王金柱·yeskyVB提供了一个三维面板控件,利用这个控件可设计图形效果的立体界面,从而使应用程序的界面显得更生动、美观,该控件还可以设置各种形式的背景,然后在背景上显示各种形式的字符,令人感兴趣的是,使用三维面板控件,还可设计我们经常在安装程序中看到的表示安装进程的流动条,并可显示进程百分比,改变流动条的颜色等。
VB程序设计案例教程

VB程序设计案例教程VB(Visual Basic)是一种基于事件驱动的编程语言,常用于开发Windows平台下的应用程序。
本文将介绍一个VB程序设计案例教程,帮助读者快速入门并了解VB的基本编程概念和技巧。
这个案例教程将演示如何创建一个简单的学生成绩管理系统。
该系统具有以下功能:添加学生信息、查询学生信息、修改学生成绩和删除学生信息。
首先,我们需要创建一个新的VB项目。
打开VB IDE(集成开发环境),点击"新建项目",选择"Windows应用程序",并命名为"学生成绩管理系统"。
接下来,我们将设计系统界面。
在窗体上添加一些控件,例如标签(Label)、文本框(TextBox)、按钮(Button)和列表框(ListBox),用于显示学生信息和操作按钮。
我们可以使用窗体设计器工具在窗体上拖拽这些控件并设置它们的名称、位置和大小。
然后,我们需要为按钮的点击事件编写相应的代码。
例如,在"添加学生"按钮的Click事件中,我们可以通过获取文本框中的学生信息,将其添加到列表框中。
这需要使用VB的语法和内置的函数、属性和方法来实现。
在查询学生信息的功能中,我们可以通过遍历列表框中的学生信息,根据用户输入的关键字查询匹配的学生并显示在一个新的窗体上。
在修改学生成绩的功能中,我们可以通过选择列表框中的学生,然后弹出一个对话框,让用户输入新的成绩,并更新列表框中学生的成绩。
最后,在删除学生信息的功能中,我们可以通过选择列表框中的学生,然后通过调用删除函数,将选定的学生从列表框中删除。
完成以上功能后,我们可以运行程序,并使用这个简单的学生成绩管理系统来添加、查询、修改和删除学生信息。
通过这个案例教程,读者可以掌握VB程序设计的基本步骤和技巧,了解VB的基本语法和常用控件的使用。
读者还可以进一步扩展和改进这个学生成绩管理系统,增加更多的功能和界面设计,提升学习和应用VB的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
vb程序设计实例2009-5-22 15:37提问者:淘淘的某在| 悬赏分:20 | 浏览次数:1688次编写程序,设银行定期存款的年利率为:1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。
今有X元,5年以后使用,共有如下6中存法:①存一次5年期;②存一次3年期,一次2年期;③存一次3年期,两次1年期;④存两次2年期,一次1年期;⑤存一次2年期,三次1年期;⑥存五次1年期.分别计算各种存法5年后到期的本息合计,如图所示2009-5-22 17:06最佳答案Private Sub Form_Activate()'1年期2.25%,2年期2.43%,3年期为2.70%,5年期为2.88%(不记复利)。
今有X元,5年以后使用,共有如下6中存法:Const x1 As Double = 0.0225, x2 As Double = 0.0243, x3 As Double = 0.027, x5 As Double = 0.0288Dim x As Doublex = Val(InputBox(""))Print "①存一次5年期,5年后到期的本息合计"; ss(x, 5, x5)Print "②存一次3年期,一次2年期,5年后到期的本息合计"; ss(ss(x, 3, x3), 2, x2) Print "③存一次3年期,两次1年期,5年后到期的本息合计"; ss(ss(ss(x, 3, x3), 1, x1), 1, x1)Print "④存两次2年期,一次1年期,5年后到期的本息合计"; ss(ss(ss(x, 2, x2), 2, x2), 1, x1)Print "⑤存一次2年期,三次1年期,5年后到期的本息合计"; ss(ss(ss(ss(x, 2, x2), 1, x1), 1, x1), 1, x1)Print "⑥存五次1年期,5年后到期的本息合计"; ss(ss(ss(ss(ss(x, 1, x1), 1, x1), 1, x1), 1, x1), 1, x1)End SubPrivate Function ss(ByVal a As Double, b As Integer, c As Double) As Doubless = a + a * c * bEnd FunctionPrivate Sub Form_Load()AutoRedraw = TrueEnd Sub如下Dim str As StringPrivate Sub Command1_Click() str = Text1.SelTextText1.SelText = "" Command3.Enabled = True End SubPrivate Sub Command2_Click() str = Text1.SelText Command3.Enabled = True End SubPrivate Sub Command3_Click() Text1.SelText = strEnd SubPrivate Sub Command4_Click() EndEnd SubPrivate Sub Command5_Click() Form2.ShowForm1.HideEnd SubPrivate Sub Form_Load()Command1.Enabled = TrueCommand2.Enabled = TrueCommand3.Enabled = FalseCommand4.Enabled = TrueEnd Sub如何让Command1~4功能键的目标转向text1 内的内容我点的时候必须把text1里面的内容去选定后才能进行操作如何让他自己选定为text1的内容- -!上面的Command1剪切功能Command2复制功能Command3粘贴功能Command4退出- -!三、利用VB三维面板控件设计流动条2000-09-15 00:00:00·王金柱·yeskyVB提供了一个三维面板控件,利用这个控件可设计图形效果的立体界面,从而使应用程序的界面显得更生动、美观,该控件还可以设置各种形式的背景,然后在背景上显示各种形式的字符,令人感兴趣的是,使用三维面板控件,还可设计我们经常在安装程序中看到的表示安装进程的流动条,并可显示进程百分比,改变流动条的颜色等。
一、介绍属性FloodColor:确定流动条的颜色,缺省为蓝色。
FloodPercent:显示当前过程如流动条进行的百分比,参数改变时显示的百分数和流动条的面积改变,设为一整型值,取值范围是0~100。
FloodShowpct:决定是否在三维面板控件上显示百分比,是一个逻辑值。
为True 时显示,为False时不显示。
FloodType:表示用户对三维面板控件的使用方式。
可取值有6个,如下所示:0 缺省设置1 表示流动条方向从左到右2 表示流动条方向从右到左3 表示流动条方向从上到下4 表示流动条方向从下到上5 表示使用指定的颜色从圆心向外画圆二、流动条设计如果在Windows3?X下,工具箱中不存在三维面板控件,可选择File菜单中的“Add File…”进行添加,在弹出的对话框中找到Windows\System目录,然后选定Threed?vbx 文件即可,如果使用VB4.0,需在Tools菜单中选择Custom Controls命令,选定Sheridan 3d Controls项,按OK按钮,可在工具箱中增加三维面板控件。
启动VB3?0,在窗体中画一水平方向的长方形三维面板控件,按F4,在属性窗口中设置其Name为P3d、Bevellnner为2-Raised、FloodType为1、FloodshowPct为True,再在窗体中画一个按钮Command1,双击该按钮,键入下面的代码:Sub Command1_Click()P3d?floodpercent=0For N%=1 To 100If N%$#@62;100 THENExit SubEnd IfP3d?FloodPercent=N%Next I%End Sub按F5,运行该程序,点击Command按钮,即可看到流动条效果。
四、使用VB设计具有动感的命令图标栏2000-09-15 00:00:00·张嵘·VB编程乐园p> 我们在使用Word、Excel等Windows应用程序时,经常会见到在程序界面顶端有一行“立体式”图标按钮。
当用鼠标按下某一个图标按钮时,程序就执行相应的操作。
这一行“立体式”图标按钮通常就称作命令图标栏或工具条。
命令图标栏一般提供一些最常用的命令,供用户快速地取用,并且它设计时采用了“立体式”按钮,操作时会产生凹下去和凸出来的“动感”,笔者这里就谈谈如何用VB来建立具有“动感”的命令图标栏。
使命令图标具有“动感”是依靠对命令图标的不同状态的图像切换来获得的。
当鼠标按下时,图标显示为凹入状态的图像;当松开时,图标显示为凸出状态的图像。
通过图像切换就使命令图标具有了“动感”,具体设计步骤如下:1。
首先在窗体中创建一个图片框(Picture Box),将其Align属性置为1,使图片框固定在窗体上端,调节其宽度使其能安置图像或命令按钮。
2。
在图标框内创建若干个图像框(Image Control),设置其Autosize=True,Picture 属性在程序运行中设置。
3。
编写程序代码。
这里假设某个命令图标凸出状态的图像文件名为"zrup.bmp",凹入状态的图像文件名为"zrdown.bmp"。
窗体装入时:Sub form-load()Imagel.picture=Loadpicture("zrup.bmp")’命令图标凸出End sub鼠标按下时:Sub Imagel-mousedown(Button As Integer Shift As Integer,X As single,Y As single)Imagel.picture=Loadpicture("zrdown.bmp")’命令图标如下:End sub鼠标松开时:Sub Imagel-mouseup(Button As Integer,Shift As Integer,X As single,Y As single)Imagel.picture=Loadpicture("zrup.bmp")’命令图标凸出End sub以上只能使命令图标具备凹下去的功能,但当在按鼠标按钮不放,并拖曳鼠标使光标移到外头,原来图标仍然处于凹下状态。
要使其自动凸起,就要编写如下代码:Sub Imagel-mouseup(Button As Integer,Shift As Integer,X As single,Y As single) Select Case ButtonCase 1If X$#@60;=0 or X$#@62;Imagel.Width or Y$#@60;=0 orY$#@62;Imagel.Height thenImagel.picture=Loadpicture("zrup.bmp") ’凸出elseImagel.picture=Lo icture("zrdown.bmp") ’凹入End ifEnd selectEnd sub通过以上三步骤就可以建立具有“动感”的命令图标,若具有多个命令图标时,可通过创建图像控制数组来实现。
BMP是常见的一种图像格式,也可以使用VB提供的丰富的不同状态的命令图标位图文件,它在VB的子目录\bitmaps \中。
五、实现窗体内部的左右移动'分割区的宽度Private Const SPL99vTERWIDTH = 45'最小移动宽度Private Const HMIN = 15'picLeft和picRight的宽度相对于窗体的比例Private Percent As Single'正在拖动的标志Private DragFlag As Boolean'每次拖动后需要重排窗体上的控件Private Sub RedrawMe()Dim NewWidth As Single' 忽略窗体缩小的情况If WindowState = vbMinimized Then Exit SubNewWidth = (ScaleWidth - SPL99vTERWIDTH) * PercentPicleft.Move 0, 0, NewWidth, ScaleHeightPicright.Move NewWidth + SPL99vTERWIDTH, 0, ScaleWidth - NewWidth - SPL99vTERWIDTH, ScaleHeight End SubPrivate Sub Form_Load()'PicLeft和PicRight的MousePointer=1Percent = 0.5End SubPrivate Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)DragFlag = TrueEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)'定义鼠标为vbSizeWE型MousePointer = vbSizeWEPercent = X / ScaleWidthRedrawMeEnd SubPrivate Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)DragFlag = FalseMousePointer = 0 '此行语句实际没有起作用End Sub六、封面的设计一、封面的设计是这样的,先出现一窗体,上面为你喜欢的图案。