当前位置:文档之家› vb第六章2

vb第六章2

vb第六章2
vb第六章2

在工具栏中的每个Button对象还有Style属性,该属性决定了按钮的行为特点。在属性页的“样式”框中可以设定按钮的Style属性,表6-4列出了五种按钮样式以及它们的说明。

表6-4 按钮样式及其说明

㈥为工具栏编写代码

当用户单击按钮(占位按钮和分隔按钮除外)时,就会触发ToolBar控件的

ButtonClick事件。可以通过按钮的Index属性或Key属性来标识被单击的按钮。在以下代码示例中,用到了一个数据控件“data1”,数据控件及其有关内容将在后面的章节中讲述。ButtonClick事件的代码如下:

Private Sub ToolBar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key

Case "Next"

data1.Recordset.MoveNext ‘记录指针指向下一个记录

Case "Previous"

data1.Recordset.MovePrevious ‘记录指针指向前一个记录

Case "Last"

data1.Recordset.MoveLast ‘记录指针指向最后一个记录 Case "First"

data1.Recordset.MoveFirst ‘记录指针指向第一个记录

End Select

End Sub

到此,我们已经建立了一个完整的工具栏。

㈦工具栏程序设计中的基本技巧

1.控制工具栏的隐藏和重现

在一个应用系统中往往不可能只有一个工具栏,像Microsoft Word 2000文字处理系统,它就有十几个工具栏。但是,在应用中并没有把所有的工具栏都置于屏幕之上,以免破坏用户界面的整体均衡。因此,在应用程序中对工具栏的控制技术是很重要的。

当一个窗体带有多个工具栏时,应该把最常用且最重要的工具栏作为缺省情况与窗体一起显示,而其它的工具栏虽同窗体一起加载,但并不一起显示。

在技术上实现上述要求很简单,即在设计好工具栏后,把该窗体缺省的工具栏对应的ToolBar控件的Visible属性设置为True,而其他工具栏对应的ToolBar控件的Visible属性设置为False。这样,在窗体被加载并显示在屏幕上时,只有Visible属性等于True的ToolBar控件的工具栏显示的窗体内。

根据一般的经验,对工具栏的控制是在窗体的菜单上进行的。为此都为菜单设计有“工具栏”专用的菜单项,在“工具栏”菜单的下一级菜单中列出了系统所有的工具栏,选择其中任何一个工具栏都会立刻把它显示在窗体内,再次选择此工具栏的菜单项,相应的工具栏便又消失了。可见,有关工具栏的菜单项类似于一个开关性按钮。在子菜单后面的程序编码的关键语句为:

ToolBar1.Visible=Not ToolBar1.visible

当工具栏正在被显示时,ToolBar控件的Visible属性等于True;若再次选择工具栏菜单项后,其ToolBar控件的Visible属性在上面语句的作用下变成了False,于是工具栏被隐藏。显然,再一次重复操作时,工具栏又会重现。

2.使工具栏按钮在不同状态下具有不同的图像

为了使工具栏上的按钮带有图像,当把ToolBar控件原来带有的ImageList属性与ImageList控件关联后,便可使工具栏按钮轻易地带有ImageList控件中的任何一个图像。但我们知道,工具栏按钮在操作时有好几种状态:正常的弹起状态、按下去的状态、禁用状态。当希望工具栏按钮处于不同的状态显示不同的图像时,便可使用ToolBar控件的DisableImageList属性和HotImageList属性。

DisableImageList属性和HotImageList属性分别对应ToolBar控件通用属性页对话框中的“禁用图像列表”和“热图像列表”选项。程序员正是通过此对话框进行ToolBar控件的这两个属性的设置。“禁用图像列表”用于在工具栏按钮被禁用时将载入并显示的图像;而“热图像列表”用于在工具栏按钮被按下时将载入并显示的图像。

3.使工具栏按钮隐藏与重现

如果工具栏上的按钮很多,并且超出了工具栏的宽度,或者工具栏上有些按钮只在某个特定的情况下才使用,一般的情况下,这些按钮根本没有用。因此在运行时,可以将这些按钮设置为隐藏状态。当需要它们出现时,只需在程序中把它们的Visible属性改为True即可。例如:

ToolBar1.Buttons(2).Visible=False ‘隐藏第二个按钮

4.使工具栏按钮禁用与可用

原则上,工具栏按钮可以让用户任意的选择使用,但是,按钮的有些功能是与系统的当前状态和用户的某些操作直接关联的。例如,当前记录如果是第一个记录时,则不允许向前搜索,所以“Previous”按钮应该禁用;而如果当前记录为最后一个记录时,则不允许向后搜索,所以“Next”按钮应该禁用。

使工具栏上按钮禁用可使用以下语句:

ToolBar1.Buttons(1).Enabled = False

使工具栏上按钮恢复使用的语句为:

ToolBar1.Buttons(1).Enabled = True

二、状态栏的设计

大多数的Windows应用程序都有状态栏,状态栏主要用来显示应用程序的运行状态信息以及显示有关的提示信息。一个状态栏实际上对应的是一个StatusBar控件,状态栏可位于窗体的顶部、底部或两侧,一般置于窗体的底部。一个状态栏上可包含有若干个窗格,一个窗格对应的是一个Panel对象,一个状态栏最多可包含有十六个窗格,每个窗格可以用来显示一个图像或文本。在应用程序中,状态栏主要有以下用途:

1.显示系统信息,如系统日期、时间等。

2.显示键盘的状态,如CapsLock、 NumberLock等。

3.显示文件的信息,如文件的大小、创建的日期等。

4.显示数据库表的有关情况,如记录总数,以及当前记录在数据库中的位置等。

5.显示关于RichTextBox控件的文本和字体状态的信息。

㈠状态栏设计的步骤

状态栏的设计是由StatusBar控件来完成的。与ToolBar控件一样,StatusBar 控件是Visual Basic 在它的标准版和企业般提供的专门设计状态栏的ActiveX控件。使用SatusBar控件来创建状态栏时,首先也要把该控件添加到工具箱中。不知您是否注意到,在设计工具栏时,当把ToolBar控件添加到工具箱时,实际上,ImageList控件、StatusBar控件也一起已经添加到工具箱中。其余步骤如下:

1.在窗体中添加StatusBar控件,如果要显示图形,还需添加ImageList控件。

2.在属性页中添加窗格。

在StatusBar控件上单击鼠标右键,在弹出式菜单中选择属性。进入属性页对话框后选择窗格选项,如图6-13所示,按“插入窗格”按钮,即可插入一个窗格。

3.在窗格属性页中输入相关的信息,例如:文本、工具提示文本、关键字、样式或图片等。

4.重复以上第二、第三步即可创建多个窗格。

5.如果需要,编写相关的代码。

㈡ Panel对象(窗格)某些属性的参数说明

⒈样式(Style属性):窗格的样式属性是用来设置窗格的显示功能,如表6-5所示。

表6-5 窗格的样式属性及其说明

⒉斜面(Bevel属性):指定Panel对象是否具有凹入的斜面、凸出的斜面或不用斜面,如表6-6所示。

表6-6窗格的斜面属性及其说明

⒊自动调整大小(AutoSize属性):当父容器(Form控件或容器控件)的大小改变时,Panel对象本身的大小应该如何改变。其设置如表6-7所示。

表6-7 窗格的自动调整大小属性及其说明

㈢状态栏设计实例

例6-2 在前面介绍的数据查询例子中,如果要求在状态栏中显示数据库表的表名、当前记录及总记录数、时间信息,同时,当鼠标指向时间窗格时,会出现当前的日期。如图6-14所示。

⒈首先单击属性页的“插入窗格”按钮,插入第一个窗格,修改其中的属性:

自动调整大小(AutoSize)属性改为:1-sbrSpring

插入第二个窗格,修改其中的属性:

自动调整大小(AutoSize)属性改为:2-sbrContents

插入第三个窗格,修改其中的属性:

自动调整大小(AutoSize)属性改为:2-sbrContents

样式(Style)属性改为:5-sbrTime

按“确定”按钮退出“属性页”对话框。

⒉编写代码:

双击查询窗体,在窗体的Load事件中加入如下代码:

StatusBar1.Panels(1).Text = "表名:" & data1.RecordSource

StatusBar1.Panels(2).Text = CStr(data1.Recordset.AbsolutePosition) & "/" &_

CStr(data1.Recordset.RecordCount)

StatusBar1.Panels(3).ToolTipText = Year(Date) & "年" & Month(Date) & "月" &_

Day(Date) & "日"

双击工具栏,在工具栏的Click事件的代码的最后加入如下代码:

StatusBar1.Panels(2).Text = CStr(data1.Recordset.AbsolutePosition) & "/" & _

CStr(data1.Recordset.RecordCount)

第五节对话框设计

在应用程序中,对话框主要应用在以下两个方面,一是提示用户提供应用程序继续执行所需要的数据;二是向用户显示信息。例如,在V isual Basic 中,用“打开文件”对话框来显示已存在的工程。VisualBasic 中的“关于”对话框也是一个如何使用对话框来显示信息的例子。

对话框不是模式就是无模式的。所谓模式对话框,在可以继续操作应用程序的其他部分之前,必须被关闭(隐藏或卸载)。例如,如果一个对话框,在可以切换到其它窗体或对话框之前要求先单击“确定”或“取消”,则它就是模式的。无模式的对话框允许在对话框与其他窗体之间转移焦点而不用关闭对话框。无模式对话框较少使用,一般用于显示频繁使用的命令与信息。

Visual Basic的对话框设计主要有以下三种方法:

⑴使用函数设计的预定义对话框

⑵使用窗体设计的自定义对话框

⑶使用对话框控件设计的系统对话框

一、预定义对话框

使用对话框函数可以创建预定义对话框,这种方法不必考虑设计、装载或者显示对话框方面的问题,因此,具有操作简单及快速的特点。然而,控件在其外观上要受到限制。预定义的对话框总是模式的。Visual Basic提供的预定义对话框有两种:信息对话框和输入对话框。分别使用MsgBox函数和InputBox函数。

㈠信息对话框

在应用程序中,有时需要显示一些简单的信息如警告或错误信息等,此时可以利用“信息对话框”来显示这些内容。当用户接收到信息后,可以单击按钮来关闭对话框,并返回单击的按钮值。

1.函数格式

MsgBox([,][,])</p><p>2.说明</p><p>⑴prompt:指定在对话框中出现的文本,即提示信息。在提示信息中使用硬回车符(chr(13))可以使文本换行。对话框的高度和宽度随着提示信息的增加而增加,最多可有1024个字符。</p><p>⑵buttons:指定对话框中出现的按钮和图标,一般有三个参数,它们之间用“+”来连接。具体如表6-8 所示:</p><!--/p7--><!--p8--><p>表6-8 MsgBox函数的参数及说明</p><p>⑶title:指定对话框的标题</p><p>⑷MsgBox函数返回值指明了在对话框中选择哪一个按钮。函数返回值及其说明如表6-9所示。</p><p>表6-9 MsgBox函数返回值</p><p>3.应用举例</p><p>例6-3 在窗体中增加一个功能,使得当单击窗体的关闭按钮时,弹出一个对话框以确定是否退出程序。</p><p>只需在窗体的Unload事件代码中增加如下代码:</p><p>Private Sub Form_Unload(Cancel As Integer)</p><p>Fanhuizhi=MsgBox(“是否退出?”,4+32+256,”请确认”)</p><p>If Fanhuizhi=6 then …或写成Fanhuizhi=vbY es</p><p>Cancel=0</p><p>Else</p><p>Cancel=1</p><p>End if</p><!--/p8--><!--p9--><p>End Sub</p><p>说明:</p><p>⑴“4+32+256”:表示选择值为4的按钮(“是”和“否”按钮),值为32的图标(“问号”图标)以及值为256的默认按钮(默认按钮为第二个按钮)。</p><p>⑵参数Cancel是一个整数,用来确定窗体是否从屏幕上删除。如果Cancel为0,则窗体被删除。将Cancel设为非0值,则窗体不被删除。</p><p>㈡输入对话框</p><p>在应用程序中,有时需要用户提供一些简单的文字或数字信息,例如在库存管理系统中,当我们要查询某种产品的库存时,首先要输入该产品的编号。Visual Basic 提供的“输入对话框”可以满足此类输入的基本要求。</p><p>1.函数格式</p><p>InputBox(prompt[,title][,default])</p><p>2.说明</p><p>⑴prompt:指定在对话框中出现的文本,即提示信息。在提示信息中使用硬回车符(chr(13))可以使文本换行。对话框的高度和宽度随着提示信息的增加而增加,最多可有1024个字符。</p><p>⑵title:指定对话框的标题。</p><p>⑶default:提供默认文本显示在文本框中,在没有其它输入时作为缺省值。如果省略default,则文本框为空。</p><p>3.应用举例</p><p>例6-4在一个库存查询窗体(qform)中,当单击“定位查找”按钮时,弹出输入对话框,要求输入产品编号,然后按产品编号找出相应的记录,如图6-15所示。只需在“定位查找”按钮的Click事件中增加如下代码:</p><p>Private Sub Command1_Click()</p><!--/p9--><!--p10--><p>a = InputBox("请输入产品编号:", "输入对话框", "")</p><p>data1.Recordset.MoveFirst ‘指针指向第一个记录</p><p>Do While data1.Recordset.EOF = False</p><p>If data1.Recordset.Fields("产品编号") = a Then</p><p>Exit Do</p><p>End If</p><p>data1.Recordset.MoveNext ‘指针指向下一个记录</p><p>Loop</p><p>End Sub</p><p>二、自定义对话框</p><p>预定义对话框是利用系统函数定义的,比较简单,不一定能满足应用程序的需要。而自定义对话框的设计比较灵活,可以按应用程序的要求来设置。自定义对话框就是用户所创建的含有控件的窗体,这些控件包括标签、命令按钮、选取按钮和文本框等,它们可以为应用程序接收信息。自定义对话框窗体可以是模式,也可以是非模式的,显示模式的定义可以使用窗体的Show方法来定义。其语法如下:窗体控件.Show [Style[,owner]]</p><p>说明:</p><p>⒈Style:设置显示模式。缺省时,表示无模式。其取值如下所示:</p><p>·1(常量为Vbmodal):模式窗体</p><p>·0(常量为Vbmodaless):无模式窗体</p><p>⒉Owner:指定窗体的父子关系。表示该对话框窗体隶属于哪一个窗体。</p><p>㈠自定义对话框设计的步骤</p><p>1.从“工程”菜单中选取“添加窗体”,在工程中添加一现存的窗体。</p><p>2.根据需要自定义窗体的外观。</p><p>3. 在代码窗口中编写事件代码。</p><p>㈡自定义对话框的应用举例</p><p>例6-5在上一例中数据查询窗体(qForm)中,对话框是用函数生成的,单击对话框的“确定”按钮后,对话框将被关闭,不能连续查询。如果还想继续查询,还需单击“继续查找”按钮。在本例中,对话框是自定义的,可以连续查询,直到单击“关闭”按钮来关闭对话框为止。</p><p>1、首先添加一个窗体,修改其属性如下:</p><p>名称(Name属性)改为:InputForm</p><p>标题(Caption属性)改为:“输入对话框”</p><p>最大化按钮(MaxButton属性):False</p><p>最小化按钮(MinButton属性):False</p><p>2、在窗体上添加一个标签,一个文本框,两个命令按钮,修改其属性如下:</p><p>标签(Label1)的标题(Caption属性)改为:“请输入产品编号”</p><!--/p10--><!--p11--><p>文本框(Text1)的值(text属性)改为空</p><p>命令按钮(Command1,Command2)的标题(Caption属性)分别改为:“确定”和“关闭”</p><p>3、编写事件代码</p><p>⑴“定位查找”命令按钮的Click事件代码:</p><p>Private Sub Command1_Click()</p><p>InputForm.Show Modal</p><p>End Sub</p><p>⑵“确定”命令按钮的Click事件代码:</p><p>Private Sub Command1_Click()</p><p>qForm.data1.Recordset.MoveFirst</p><p>Do While qForm.data1.Recordset.EOF = False</p><p>If qForm.data1.Recordset.Fields("产品编号")=Trim(Text1.Text) Then</p><p>Exit Do</p><p>End If</p><p>qForm.data1.Recordset.MoveNext</p><p>Loop</p><p>qForm.Refresh</p><p>End Sub</p><p>⑶“关闭”命令按钮的Click事件代码:</p><p>Private Sub Command2_Click()</p><p>Unload me</p><p>End Sub</p><p>三、系统对话框</p><p>Visual Basic的“公共对话框”(Common Dialog)控件为用户提供了一组标准的系统对话框,可以使用这些对话框进行打开或保存文件、设置打印选项、选择各种颜色以及选择字体等操作。另外还可以通过调用Windows的帮助引擎来显示应用程序的帮助。</p><p>㈠系统对话框的使用步骤</p><p>⒈添加“公共对话框”控件</p><p>“公共对话框”控件是Visual Basic 6.0 专业版和企业版所特有的Active X控件,名称为“Microsoft Common Dialog Control 6.0”,所以首先应该将该控件添加到工具箱中。</p><p>⒉将“公共对话框”控件添加到窗体。</p><p>⒊利用“属性页”对话框设置控件属性,包括“打开/另存为”、“颜色”、“字体”、“打印”和“帮助”等五个方面的属性。用右键单击“公共对话框”控件,在弹出菜单中选择属性菜单项即可进入“属性页对话框”如图6-16所示。</p><!--/p11--><!--p12--><p>⒋各种对话框的使用:使用Common Dialog控件的方法来显示对话框。</p><p>·使用“打开”对话框:控件名.ShowOpen</p><p>·使用“另存为”对话框:控件名.ShowSave</p><p>·使用“颜色”对话框:控件名.ShowColor</p><p>·使用“字体”对话框:控件名.ShowFont</p><p>·使用“打印”对话框:控件名.ShowPrinter</p><p>㈡“打开”对话框属性及其说明</p><p>“打开”对话框可以用来指定欲打开文件所在的驱动器、文件夹及其文件名、文件扩展名,如图6-17所示。</p><p>“打开”对话框具有以下属性,这些属性可以在属性页中进行设置。</p><p>⒈对话框标题(DailogTitle):用于设置对话框的标题,缺省值为“打开”。</p><!--/p12--><!--p13--><p>⒉文件名称(FileName):用于设置对话框中“文件名称”的缺省值,并返回用户所选中的文件名。</p><p>⒊初始化路径(InitDir):设置初始的文件目录,并返回用户所选择的目录。缺省值为当前目录。</p><p>⒋过滤器(Filter):设置显示文件类型,格式为:描述|通配符,若需设置多项时,可以用管道符(|)隔开。例如:所有文件|*.*|文本文件|*.txt。</p><p>⒌标志(Flags):设置对话框的一些选项,可以是多个值的组合。</p><p>⒍缺省扩展名(DefaultExt):为对话框返回或设置缺省的文件扩展名。当保存一个没有扩展名的文件时,自动给该文件指定由DefaultExt属性指定的扩展名。</p><p>⒎文件最大长度(MaxFileSize):设置被打开的文件的最大长度,取值为1~2K,缺省值为260。</p><p>⒏过滤器索引(FilterIndex):设置“打开”或“另存为”对话框中缺省过滤器的索引。缺省值为1(即第一个过滤器)。</p><p>㈢“另存为”对话框属性及其说明</p><p>“另存为”对话框可以用来指定文件所要保存的驱动器、文件夹及其文件名、文件扩展名。该对话框的结构和属性与“打开”对话框基本相同,所以不再另外说明。</p><p>㈣“颜色”对话框属性及其说明</p><p>“颜色”对话框用来在调色板中选择颜色,或者创建自定义颜色。如图6-18所</p><p>示。</p><p>“颜色”对话框具有以下属性,这些属性可以在属性页中进行设置。</p><p>⒈颜色(Color):用于设置初始颜色,并返回用户所选择的颜色。</p><!--/p13--><!--p14--><p>⒉标志(Flags):设置对话框的一些选项。</p><p>㈤“字体”对话框属性及其说明</p><p>“字体”对话框可以用来设置并返回所用字体的名字、样式、大小、效果及颜色。如图6-19所示。</p><p>⒈字体名称(FontName):设置字体名称中的初始字体,并可返回用户所选择的字体名称。</p><p>⒉字体大小(FontSize):设置对话框中的初始字体大小,并可返回用户所选择的字体大小。缺省值为8 。</p><p>⒊最小(Min)和最大(Max):设置对话框中字体大小的最小值和最大值。</p><p>⒋标志(Flags):设置对话框的一些选项。</p><p>⒌样式(Style):设置字体风格,它包括4种选项:粗体(FontBold)、斜体(FontItalic)、下划线(FontUnderline)、删除线(FontStrikethru)。</p><p>㈥“打印”对话框属性及其说明</p><p>“打印”对话框可以设置打印输出的方法,如打印范围、打印份数、打印质量等其它打印属性。此外,对话框还显示当前安装的打印机的信息,允许用户重新设置缺省打印机。如图6-20所示。</p><p>⒈复制(Copies):设置打印的份数。</p><p>⒉标志(Flags):设置对话框的一些选项。</p><p>⒊最小(Min):设置可打印的最小页数。</p><p>⒋最大(Max):设置可打印的最大页数。</p><p>⒌起始页(FromPage):设置要打印的起始页号。</p><!--/p14--><!--p15--><p>⒍终止页(ToPage):设置要打印的终止页号。</p><p>⒎方向(Orientation):设置纵向或横向打印模式。</p><p>㈦系统对话框应用实例。</p><p>例6-6 设计如图6-21所示的窗体,窗体中含有一个标签和两个命令按钮。当单击“字体设置”命令按钮时,弹出“字体”对话框,可设置标签标题的字体;当单击“颜色设置”命令按钮时,弹出“颜色”对话框,可设置标签标题的显示颜色。</p><p>⒈在窗体上添加一个标签和两个命令按钮,修改这些对象的属性。</p><!--/p15--><!--p16--><p>标签的标题(Caption属性)改为:“Visual Basic 程序设计”</p><p>第一个命令按钮的标题改为:“字体设置”</p><p>第一个命令按钮的标题改为:“颜色设置”</p><p>⒉编写命令按钮的程序代码如下:</p><p>Private Sub Command1_Click()</p><p>CommonDialog1.showfont</p><p>Label1.FontName = CommonDialog1.FontName</p><p>Label1.FontSize = CommonDialog1.FontSize</p><p>Label1.FontStrikethru = CommonDialog1.FontStrikethru</p><p>Label1.FontBold = CommonDialog1.FontBold</p><p>Label1.FontItalic = CommonDialog1.FontItalic</p><p>Label1.FontUnderline = CommonDialog1.FontUnderline</p><p>End Sub</p><p>Private Sub Command2_Click()</p><p>CommonDialog1.ShowColor</p><p>Label1.ForeColor = CommonDialog1.Color</p><p>End Sub</p><p>习题:</p><p>⒈在Windows 应用程序中,菜单主要有哪些类型?</p><p>⒉简述为什么要进行菜单项的动态设置以及如何实现动态设置。</p><p>⒊许多应用程序的菜单中都设计有“工具栏”菜单项,该菜单项的下一级菜单中列出了系统所有的工具栏,选择某个菜单项,对应的工具栏将会显示在窗体内,再次选择,工具栏又消失。请问这如何实现?</p><p>⒋对话框设计主要有哪几种方法?这些方法主要有哪些区别?</p><p>⒌试分析学生学籍管理系统的功能结构,然后设计相应的菜单系统。要求设计的菜单系统能定义有快捷键、访问键和分隔条。</p><p>⒍设计一个工具栏,包含如下几个按钮:</p><p>⑴字体设置</p><p>⑵颜色设置</p><p>⑶打印设置</p><!--/p16--><!--rset--><h2>vb课后练习答案习题解答 (6)</h2><p>第7章过程 7.1 填空题 1.一个VB应用程序可以包括的三种模块是:()、()和()模块。 答案:窗体模块、标准模块、类模块 2.函数过程定义中至少有一个赋值语句把表达式的值赋给()。 答案:函数过程名 3.在VB中,过程定义中有两种传递形式的参数:一种是(),称为传值调用;另一种是(),称为传址调用。 答案:传值参数、传址参数 4.若模块中以关键字public定义子过程,则在()中都可以调用该过程。 答案:整个应用程序 5.若窗体模块或标准模块中以关键字private定义函数过程,则该函数过程只能在( )中使用。 答案:该窗体模块或标准模块 6.每一个用标识符定义的变量、常量、过程都有一个有效范围,这个范围称为标识符的()。 答案:作用域 7.在模块内定义的过程,若在关键字sub或Function加前缀Public,则该过程称为()。 答案:全局级过程或工程级过程 8.过程中定义的静态变量作用域是(),生存期是()。 答案:该过程内、整个应用程序运行结束之前 7.2 选择题 1.标准模块中的代码存放在以()为扩展名的文件中。 a).frm b).bas c).cls d).txt 答案:b 2.()不能在标准模块中定义。 a)事件过程 b)子过程 c)函数过程 d)公共过程 答案:a 3.设已定义子过程p,有3个数值型传值参数;设a为实型变量,调用该子过程的正确语句为()。 a) p b) call p 0.5, a, 100 c) call p ( 0.5, cos(0.1), a+10 ) d) p ( 0.5, 1.2, 100 ) 答案:c 4. 设已定义函数过程f,它有三个实型传值参数;设a,b和c为实型变量,则调用该函数的正确语句为()。 a)f b) f( a+b, b+c ) c)f ( a+b, b+c ,c+a ) d) f a+b, b+c, c+a</p><h2>VB第六章自测题及答案</h2><p>第6章常用控件 6.1 标签和文本框 自测题 一.单项选择题(共50分,每小题5分) 1.在标签框上显示的内容由()属性来实现。 a) Name b)Caption c)Text d)ForeColor 2.要使标题在标签框内居中显示,Alignment属性的取值应为()。 a)0 b)1 c)2 d)3 3.若使标签框根据所显示内容自动调整其大小,则可以通过设置()属性值为True 来实现。 a)AutoSize b)Alignment c)Enabled d)Visible 4.要设置标签框是否有边框,应设置()属性来实现。 a)BackColor b)ForeColor c)BordeStyle d)Visible 5.文本框没有()属性。 a) BackColor b) Enabled c) Visible d) Caption 6.若设置或返回文本框中的文本,则可以通过()属性来实现。 a) Caption b)Text c)Name d)Visible 7.若设置文本框最多可以接受的字符数,则可以使用()属性。 a)Length b)Multiline c)Max d)MaxLength 8.在文本框中设置垂直滚动条,要使ScrollBars的值为()。 a)0 b)1 c)2 d)3 9.要获得用户在文本框中所选择的文本内容,可以访问()属性。 a)Text b)SetFocus c)GetFocus d)SelText 10.在运行程序时,要使文本框获得焦点,则需使用()方法。 a)Change b)SetFocus c)GetFocus d)Move 二.填空题(共35分,每空5分) 1.标签框的作用是(),文本框的作用是()。 2.要使标签框有边框,需设置BorderStyle属性的值为()。 3.要使标签框不能响应事件,应设置Enabled属性的值为( )。 4.在程序运行期间,用户可以向文本框输入内容,输入的内容自动存入文本框的()属性中。 5.若使文本框内能够接受多行文本,则要设置Multiline属性的值为()。 6.只有Multiline设置为()时,ScrollBars属性才生效。 三.设Text1为某一文本框名,写出下列程序段的执行结果。(15分) Text1.Text=”abcdefghijk” Text1.selstart=3 Text1.sellength=5 Print Text1.SelText 参考答案</p><h2>VB课后实验6答案</h2><p>实验6 数组 6-1 Private Sub Command1_Click() Dim i As Integer, j As Integer Dim a(10) As Integer, t As Integer Print "交换前数据:" For i = 1 To 10 a(i) = ……‘生成20-80之间的随机数 Print ……;‘注意这里用分号,表示在一行上紧密输出各数组元素的值, ‘如不用分号和逗号,则分行输出各数组元素的值。 Next i Print ‘输出空行,表示后面的输出换到新的一行。 For i = 1 To 10 \ 2 ‘这里必须是10\2,表示交换5次,即可实现两两数据交换(第一' 个和最后一个的交换,第二个和第九个的交换,以此类推) ‘以下实现数据交换,必须通过第三个变量实现两两数据交换 t = a(i) a(i) = a(10 - i + 1) a(10 - i + 1) = t Next i Print "交换后数据:" ‘必须单独做循环输出数据,不能放在上面的循环里输出,因为上 面循环只有5次,只能输出5个元素。 For i = 1 To 10 Print ……; Next i End Sub 6-2 Private Sub Command1_Click() Dim a(10) As Integer, i As Integer, aver As Integer Dim max As Integer, imax As Integer Dim min As Integer, imin As Integer, sum As Integer Print "输入评委的评分" ‘①输入数组元素 For i = 1 To 10 a(i) =…… if a(i)<5 or a(i)>10 then ‘出错信息 ‘i控制变量作何处理? endif</p><h2>VB第6章 数组</h2><p>教案</p><p>讲稿 第六章数组 [旧课复习]: 复习内容: 1.循环语句 2.多重循环使用 复习目的:学生掌握两种基本循环结构语句的使用以便在数组中能正确使用循环语句 复习时长:大约5分钟 [新课导入]: 导入方式:引入日常生活中的实例让学生理解数组的功能 导入目的:增强学生的理解能力 导入时长:大约10分钟 [新课讲授]: 重点:静态数组、动态数组的基本操作及列表框和组合框的使用 难点:控件数组 方法:运用多媒体辅助教学,采用讲授法和启发式教学法 6.1数组的概念 6.1.1数组概念 数组并不是一种数据类型,而是一组相同类型数据的集合。用一个统一的名字(数组名)代表逻辑上相关的一批数据,每个元素用下标变量来区分;下标变量代表元素在数组中的位置。 数组中的各个变量称为数组元素,数组中的每个元素用一个唯一的下标(索引)来标识。如m(5),表示名为m的数组中下标为5的那个元素。 数组元素的个数称为数组的长度(大小)。数组的各个元素在内存中是连</p><p>续存放的,如图6-1所示。数组名表示这个连续数据区域的起始位置,下标表示对应元素在内存区域中的相对位置。 图6-1 数组在内存中的存放方式 6.1.2数组的分类 Visual Basic中的数组,按不同的方式可分为以下几类: 按数组的大小(元素个数)是否可以改变分为:静态(定长)数组、动态(可变长)数组。 按元素的数据类型可分为:数值型数组、字符串数组、日期型数组、变体数组等。 按数组的维数可分为:一维数组、二维数组、多维数组。 对象数组:菜单对象数组、控件数组。 6.2静态数组 6.2.1 静态数组的声明 1.一维数组 静态一维数组的声明格式如下: Dim数组名(下标) [ As <类型> ] 说明: (1)数组的命名与简单变量的命名规则相同。</p><h2>教材第六章习题解答</h2><p>第六章化学动力学习题解答 1.回答问题: (1)什么是基元反应(简单反应)和非基元反应(复杂反应)?基元反应和平时我们书写的化学方程式(计量方程式)有何关系? (2)从活化分子和活化能角度分析浓度、温度和催化剂对化学反应速率有何影响。 【解答】(1)化学反应进行时,反应物分子(或离子、原子、自由基)在碰撞过程中,只经过一步直接转化为生成物分子的反应,称为基元反应。由一种基元反应组成的总反应,称为简单反应。由两种或两种以上基元反应所组成的总反应,是非基元反应,称为复合反应。基元反应是反应机理最简单的反应,化学方程式是一个宏观的总反应。 (2)一定温度下,气体分子具有一定的平均能量,具体到每个分子,则有的能量高些有的低些。只有极少数的分子具有比平均值高得多的能量,它们碰撞时能导致原有化学键破裂而发生反应,这些分子称为活化分子。活化分子所具有的最低能量与分子的平均能量之差称为简单碰撞的活化能,简称活化能。 对一定温度下的某一特定反应,反应物分子所占的分数是一定的。因此单位体积内的活化分子的数目与单位体积内反应分子的总数成正比,当反应物浓度增大时,单位体积内分子总数增多,活化分子的数目也相应增多。于是单位时间内有效碰撞次数增多,反应速度加快。 温度升高不仅使分子间碰撞频率增加,更主要的是使较多的分子获得能量而成为活化分子。结果导致单位时间内有效碰撞次数显著增加,从而大大加快了反应速率。升高温度可使活化分子的分数增加。 催化剂能加快化学反应速率的实质,主要是因为它改变了反应的途径,降低了反应的活化能,相应地增加了活化分子的分数,反应速率也就加快。 2.设反应A+3B →3C 在某瞬间时3()3-=?c C mol dm ,经过二秒时3()6-=?c C mol dm ,问在二秒内,分别以A 、B 和C 表示的反应速率A B C υυυ、、各为多少?</p><h2>VB第六章习题答案(上海立信会计学院)</h2><p>上海立信会计学院 班级:学号:姓名:指导教师: 系部:专业: 习题六p150 一、简述子过程与函数过程的共同点和不同之处。 答:相同之处:都是功能相对独立的一种子程序结构,它们有各自的过程头、变量声明和过程体,在程序的设计过程中可以提高效率。 不同之处: (1)声明的关键字不同。子过程为Sub,而函数过程为Function。 (2)了过程无值就无类型说明,函数过程有值因此有类型的说明 (3)函数的过程名称同时是结果变量,因此在函数过程体内至少要对函数的过程名赋值一次数据,而子过程内不能赋值。 (4)调用的方式不同,子过程是一条独立的语句,可以用Call子过程名或省略Call直接以子过程名调用;函数的过程不是一条独立的语句,是一个函数值,必须参与表达式运算。 (5)通常,函数过程可以被子过程代替,只需要在调用的过程中改变一下过程调用的形式,并在子过程的形参表中增加一个地址传递的形参来传递结果。 二、什么是形参,实参?什么是值引用?地址引用?地址应用对实参有什么限制? 答:形参:在定义过程时的一种假设的参数,只代表该过程的参数的个数、类型,它的名字不重要,没有任何的值,只表示在过程体内将进行的一种操作。 实参:在调用子过程时提供过程形参的初始值,或通过过程体处理后的结果。 值引用:系统将实际参数的值传到形参之后,实参与形参断开联系,过程中对于形参的修改不会影响到实际参数的变化。 地址引用:实参与形参共同使用一个存储单元,在过程中对形参进行修改,则对应的实际参数也同时变化。 在地址引用时,实参只能是变量,不能是常量或表达式。 三、指出下面过程语句说明中的错误:</p><p>(1)Sub f1(n%) as Integer (2)Function f1%(f1%) (3)Sub f1(ByVal n%()) (4)Sub f1(x(i) as Integer) 答:(1)Sub子过程名没有返回值,因此就没有数据的类型 (2)函数名与形参名称相同 (3)形参n为数组,不允许声明为ByVal值传递 (4)形参x(i)不允许为数组元素 四、已知有如下求两个平方数和的fsum子过程: Public Sub fsum(sum%, ByVal a%, ByVal b%) sum = a * a + b * b End Sub 在事件过程中若有如下变量声明: Private Sub Command1_Click() Dim a%, b%, c! a = 10: b = 20 则指出如下过程调用语句的错误所在: (1)fusum 3, 4, 5 (2)fsum c, a, b (3)fsum a + b, a, b (4)Call fsum(Sqr(c), Sqr(a), Sqr(b)) (5)Call fsum c,a,b 答:(1)furm子过程的第一个形参是地址传递,因此对应的实参3不能是常量 (2)furm的第一个形参是整型而且是地址传递,对应的实参c是单精度,数据类型不匹配(3)furm的第一个形参是地址传递,因此对应的实参a+b不应当是表达式 (4)furm的第一个形参是地址传递,因此对应的实参Sqr(c)不应当是表达式 (5)用Call语句调用furm子过程时,必须用圆括号来描述实参 六、要使变量在某事件过程中保留值,有哪几种变量声明的方法? 答:声明为static或者全局变量 七、为了使某变量在所有的窗体中都能使用,应在何处声明该变量? 答:应在窗体\模块的通用声明段用Public关键字声明为全局变量。</p><h2>热学第六章课后习题答案</h2><p>第六章热学答案 1. 解 :由致冷系数2122T T T A Q -== ε ()J T T AT Q 421221025.121 102731000?=-?=-= 2.解:锅炉温度K T 4832732101=+=,暖气系统温度K T 333273602=+=,蓄水池温度 K T 288273153=+=。kg 0.1燃料燃烧放出的热量为1Q 热机的工作效率1212111T T Q Q Q A -=-== η,向制冷机做功)1(1 21T T Q A -=,热机向暖气系统放热分别为11212Q T T A Q Q = -=;设制冷机的制冷系数3 2343T T T A A Q A Q -=-==ε, A T T T T T T T T T A Q ?-?-=-+ =3 22 1213234)1( 暖气系统得到热量为: 112322112421Q T T T T T Q T T Q Q Q ??? ? ??--+= +=1123231Q T T T T T ?-T -= cal 41049.115000483 333 288333288483?=???--= 3.解:(1)两个循环都工作与相同绝热线,且低温T 不变,故放热相同且都为2Q ,在第一个循环 过程中22 1212111Q A Q Q Q T T +- =-=- =η,2 122T T AT Q -=;在第二个循环过程中高温热源温度提高到3T 的循环过程中2223232111Q A Q Q Q T T +-=-=- =η,2 32 22T T T A Q -=;因此2 32 22122T T T A T T AT Q -=-= 解得()()K T T A A T T 473173373800 106.12733 211223=-?+=-+= (2)效率增大为:3.42473 273 1132=-=- =T T η % 4.解:热机效率 1211T T Q A -≤,当取等号时1Q 最小,此时1 211T T Q A -=,</p><h2>VB第6章 复习资料</h2><p>第6章补充资料 习题解答 1.简述子过程和函数过程的共同点和不同之处. 解答:子过程和函数过程的共同点:函数过程和子过程都是功能相对独立的一种子程序结构, 它们有各自的过程头、变量声明和过程体。在程序中使用它们不但可以避免书写重复的程序语句,缩短代码,而且可以使程序条理清晰,容易阅读。 子过程和函数过程的不同点: (1)过程声明的关键字不同,子过程用的是Sub,函数过程用的是Function。 (2)子过程名无值就无类型声明,函数过程名有值就有类型声明。 (3)函数过程名兼作结果变量,因此在函数过程体内至少对函数过程名赋值;而子过程名在 过程体内不能赋值。 (4)调用方式不同,子过程是一条独立的语句,可用Call子过程名或省略Call直接以子过程 名调用;函数过程不是一条独立的语句,是一个函数值,必须参与表达式的运算。 (5)一般来说,一个函数过程可以被一个子过程代替,代替时只要改变函数过程定义的形式, 并在子过程的形参表中增加一个地址传递的形参来传递结果。 2.什么是形参,什么是实参?什么是值引用?什么是地址引用?地址引用时,对应的实参 有什么限制? 解答:形参是在定义过程时的一种形式虚设的参数,只代表了该过程参数的个数、类型、位 置、形参的名字并不重要,也没有任何值,只表示在过程体内进行某种运算或处理。 实参是调用子过程时提供给过程形参的初始值或通过过程体处理后获得的结果。 调用时用实参代替形参,实参与形参在个数、类型、位置一一对应,实参与形参名相同与否 无关。 实参与形参的结合有两种方法,即传地址(ByRef)和传值(ByVal),或称地址引用和值引 用,缺省为地址引用。 值引用时,系统将实参的值传递给对应的形参,实参与形参断开了联系。如果在过程体中改 变形参的值,不会影响到实参。 地址引用时,实参与形参变量共用同一个存储单元,如果在过程中改变了形参的值,对应的 实参也将发生改变。 地址引用时,实参只能是变量,不能是常量或表达式。</p><h2>vb课后习题答案</h2><p>习题3—4 (P126) Private Sub Command1_Click() Image1.Width = Image1.Width * 1.2 Image1.Height = Image1.Height * 1.2 End Sub Private Sub Command2_Click() Image1.Width = Image1.Width / 1.2 Image1.Height = Image1.Height / 1.2 End Sub Private Sub Command3_Click() Image1.Width = Form1.Width Image1.Height = Form1.Height End Sub Private Sub Form_Load() Image1.Left = 0 Image1.Top = 0 Image1.Picture = LoadPicture(App.Path & "\back.jpg") End Sub 习题3—5 (P126) Dim mleft As Long Private Sub Command1_Click() Timer1.Enabled = True End Sub Private Sub Command2_Click() Timer1.Enabled = False End Sub Private Sub Timer1_Timer() mleft = Label1.Left + 100 If mleft + Label1.Width > Picture1.Width Then mleft = 0 End If Label1.Left = mleft End Sub</p><h2>第六章VB的过程设计讲解</h2><p>第六章VB的过程设计 1.什么是过程 在程序设计中,为各个相对独立的功能模块所编写的一段程序称之为过程。 2.VB中的自定义过程分类 (1)以“Sub”保留字开始的子程序过程(包括事件过程和通用过程),不返回值; (2)以“Function”保留字开始的函数过程,返回一个值; (3)以“Property”保留字开始的属性过程,可以返回和设置窗体、标准模块以及类模块的属性值,也可以设置对象的值。 6.1 子过程(Sub)的定义与调用 1.事件过程 (1)窗体事件过程 语法:Private Sub Form_事件名([参数列表]) [局部变量和常数声明] 语句块 End Sub 注意: 1)窗体事件过程名由Form_事件名组成,多文档窗体用MDIForm_事件名; 2)每个窗体事件过程名前都有一个Private的前缀,表示该事件过程不能在它自己的窗体模块之外被调用; 3)事件过程有无参数,完全由VB提供的具体事件本身决定,用户不可以随意添加。 (2)控件事件过程 语法:Private Sub 控件名_事件名([参数列表]) [局部变量和常数声明] 语句块 End Sub 注意:其中的控件名必须与窗体中某控件相匹配,否则VB将认为它是一个通用过程。 (3)建立事件过程的方法</p><p>1)打开代码编辑器窗口(两种方法:双击对象或从工程管理器中单击“查看代码”按钮)2)在代码编辑器窗口中,选择所需要的“对象”和“事件过程” 3)在Private Sub ……End Sub之间键入代码 4)保存工程和窗体 (4)事件过程的调用 事件过程由一个发生在VB中的事件来自动调用或者由同一模块中的其他过程显示调用。 2.通用过程 通用过程是一个必须从另一个过程显示调用的程序段,通用过程有助于将复杂的应用程序分解成多个易于管理的逻辑单元,使应用程序更简洁、更易于维护。 通用过程分为公有(Public)过程和私有(Private)过程两种,公有过程可以被应用程序中的任一过程调用,而私有过程只能被同一模块中的过程调用。 (1)定义方法: [Private | Public ][ Static] Sub过程名([参数列表]) [局部变量和常数声明] ‘用Dim 或Static声明 语句块 [Exit Sub] 语句块 End Sub 注意: 1)缺省[ Private | Public ]时,系统默认为Public ; 2)Static 表示过程中的局部变量为“静态”变量; 3)过程名的命名规则与变量命名规则相同,在同一个模块中,同一符号名不得既用作Sub 过程名,又用作Function过程名。 4)参数列表中的参数称为形式参数,它可以是变量名或数组名,只能是简单变量,不能是常量、数组元素、表达式;若有多个参数时,各参数之间用逗号分隔,形参没有具体的值。VB 的过程可以没有参数,但一对圆括号不可以省略。不含参数的过程称为无参过程。 形参格式为: [ ByVal ] 变量名[()] [As数据类型] 式中:</p><h2>VB第6章课后练习答案</h2><p>第6章过程与函数 一、填空题 1.数组名作为过程或函数实参,相应的形参传递方式为____按地址传递____。2.一维长整型数组a作过程形参写作:a() As Long,二维长整型数组b作过程形 参写作:____b() As Long ____。3.过程形参为整型,对应实参为5.64,传递给形参的值为____6____。 4.调用过程时对形参的改变不会导致相应实参变量的改变,则该形参采用____按 值传递____方式。 5.调用过程时对形参的改变就是对相应实参变量的改变,则该形参采用____按地 址传递____方式。 6.声明Single类型全局变量x,写作____Public x As Single(或 Public x!)____;声明Integer类型静态变量 x,写作____Static x As Integer (或</p><p>Static x%)____。 7.在窗体Form1的过程中引用窗体Form2中的全局变量y,写作 ____Form2.y____。 8.阅读如下代码,单击窗体后,窗体上的显示结果为____s = 2 s = 5 s = 9____。 Dim i As Integer, n As Integer Private Sub Form_Click() Dim i As Integer For i = 1 To 3 s = sum(i): Print "s ="; s; Next i End Sub Private Function sum(n As Integer) Static j As Integer j = j + n + 1: sum = j End Function 二、选择题 1.VB程序设计语言中,函数过程与子过程必 须分别用关键字( C)声明。 (A)Private,Public (B)Public,</p><h2>现代电子线路基础(新版教材)--_第六章习题答案</h2><p>第六章习题答案 6.1 在题图6.1所示调谐放大器中,工作频率f o =10.7MHz,L 1-3=4μH,Q o =100, N 1-3=20匝, N 2-3=5匝, N 4-5=5匝,晶体管3DG39在f o =10.7MHz 时测得g ie =2860μS,C ie =18pF, g oe =200μS, C oe =7pF,|y fe |= 45mS,y re =0,试求放大器的电压增益A vo 和通频带BW 。 解: 25.020 5 3 ~13~21== =N N P , 25.02053~15~42== =N N P 总电容pF 4.55)L *)f 2/((1C 20==∑π LC 振荡回路电容pF 8.53C p C p C C ie 22oe 21=--=∑ LC 振荡回路固有谐振频率'0f ==10.85(MHz) 固有损耗电导:''6 00036.710()0011g S Q L 2Q f L ωπ-= = =? 2226 2661200.2520010 0.2528601036.7100.228()oe ie G P g P g g mS ---∑=++=??+??+?= 116.32L 0Q G L ω∑== )KHz (6563 .167 .10Q f B L 0W === , 1210 228.0104525.025.0G |y |P P A 6 3fe 210 V -=????-=-=--∑ 注:由上述计算可以看出,'0f 和0f 相差不大,即部分接入后对谐振频率影响较小,但概念要清楚。另外,这里给出了fe y (即认为是m g )不要通过EQ I 来计算m g 。 6.2 题图6.2是某中放单级电路图。已知工作频率f o =30MHz,回路电感L =1.5μH, Q o =100,N 1/N 2=4,C 1~C 4均为耦合电容和旁路电容。晶体管在工作条件下的y 参数为 ie (2.8j3.5)mS y =+; re 0y ≈ fe (36j27)mS y =- oe (0.2j2)mS y =+ 试解答下列问题: (1) 画出放大器y 参数等效电路; (2) 求回路谐振电导g Σ; (3) 求回路总电容C Σ; (4) 求放大器电压增益A vo 和通频带BW ; (5) 当电路工作温度或电源电压变化时, A vo 和BW 是否变化? i V o V C 2</p><h2>VB第六章习题答案(上海立信会计学院)</h2><p>上海立信会计学院 班级:学号: 姓名:指导教师: 专业: 习题六p150 -、简述子过程与函数过程的共同点和不同之处。 答:相同之处:都是功能相对独立的一种子程序结构,它们有各自的过程头、变量声明和过程体,在程序的设计过程中可以提高效率。 不同之处: (1)声明的关键字不同。子过程为Sub,而函数过程为 Funct ion。 (2)了过程无值就无类型说明,函数过程有值因此有类型的说明 (3)函数的过程名称同时是结果变量,因此在函数过程体 内至少要对函数的过程名赋值一次数据,而子过程内不能赋 值。</p><p>(4)调用的方式不同,子过程是一条独立的语句,可以用 Cal I子过程名或省略Call直接以子过程名调用;函数的过 程不是一条独立的语句,是一个函数值,必须参与表达式运算。(5)通常,函数过程可以被子过程代替,只需要在调用的 过程中改变一下过程调用的形式,并在子过程的形参表中增加一个地址传递的形参来传递结果。 二、什么是形参,实参?什么是值引用?地址引用?地址应用 对实参有什么限制? 答:形参:在定义过程时的一种假设的参数,只代表该过程的参数的个数、类型,它的名字不重要,没有任何的值, 只表示在过程体内将进行的一种操作。 实参:在调用子过程时提供过程形参的初始值,或通过过程体处理后的结果。 值引用:系统将实际参数的值传到形参之后,实参与形参断开联系,过程中对于形参的修改不会影响到实际参数的变化。 地址引用:实参与形参共同使用一个存储单元,在过程中对形参进行修改,则对应的实际参数也同时变化。</p><p>在地址引用时,实参只能是变量,不能是常量或表达式。</p><p>三、指出下面过程语句说明中的错误: Sub f1 (n%) as Integer Function f1%(f1%) Sub fl (ByVa I n% 0) Sub fl(X(i) as Integer) 答:(1) Sub子过程名没有返回值,因此就没有数据的类型 (2)函数名与形参名称相同 (3)形参n为数组,不允许声明为By Vai值传递 (4)形参x(i)不允许为数组元素 四、已知有如下求两个平方数和的fsum子过程: Publ ic Sub fsum (sum%, ByVaI a%, ByVaI b%) sum =a*a+b*b End Sub 在事件过程中若有如下变量声明: Pr ivate Sub Commandl Cl ick()</p><h2>vb第六章常用控件(三)</h2><p>第六章常用控件实验作业(三) 一、实验目的 结合实例,掌握滚动条和定时器控件的基本属性、事件和方法,重点掌握滚动条的Value属性及Change、Scroll事件,定时器控件的Interval、Enabled 属性及Timer事件,掌握控件数组的使用。 二、实验要求 1、写出作业1任意一种方法的完整设计过程,包括添加的控件、控件属性的设置和代码的编写。 2、写出作业2定时器控件的Timer事件代码。 3、请写出作业3命令按钮Command1的Click事件代码和定时器控件的Timer 事件代码。 4、分别写出作业4命令按钮Command1的Click事件代码和定时器控件的Timer 事件代码。 三、实验内容 作业1: 调色板程序:利用滚动条完成如下调色板功能。(请同学们用单个控件和控件数组两种方式来分别完成如下功能) 作业2: 利用计时器控件完成数字式电子钟的设计。建立两个标签控件Label1和Label2,并添加一个定时器控件;将标签控件的Autosize属性设置为True;定时期控件的Interval属性设置为1000;将标签控件的字号设置为“小三”</p><p>作业3: 设计一个可以测手速的程序,程序刚开始运行时界面如下: 程序初始运行界面单击开始按钮后界面 这样就得到了两次单击按钮的时间间隔,精确到毫秒。 提示:此题需使用计时器,计时器的interval属性应该设置为1毫秒设计完成后可以测试自己的手速的极限速度是多少</p><p>4、设计程序,更改图片大小(考虑好控件的选择) 5、设计如下界面,窗体上有一个图像框,三个按钮和一个通用对话框 要求:当单击装载图片按钮时,调出如下第二个图所示的“打开图片文件”对话框,并选择装入的图片。初始化路径为“D:\”,过滤器为只能显示*.jpg 与*.bmp 图片。当单击保存图片按钮时,调出如下第三个图所示的“图片另存为”对话框</p><h2>VB第六章数组</h2><p>. 单选题:(1.0分) 以下定义数组的语句中,正确的是______。 A. Dim a( ,) as Integer B. Dim a(5 To 1) As Integer C. Dim a(-3 To 2000) As Single D. Dim a(n) As Double 解答:C 参考答案: C 2. 单选题:(1.0分) 执行语句Dim a(3,4) As Single创建一个二维数组,数组元素的个数有____个。 A. 12 B. 4 C. 20 D. 7 解答:A 参考答案: C 3. 单选题:(1.0分) 执行以下Command1的Click事件过程,在窗体上显示的内容是______。 Private Sub Command1_Click( ) Dim a a=Array(″a″,″b″,″c″,″d″,″e″,″f″,″g″) Print a⑴;a⑶;a⑸ End Sub A. abc</p><p>B. bdf C. ace D. 出错 解答:C 参考答案: B 4. 单选题:(1.0分) 设有如下程序: Option Base 1 Private Sub Form_Click() Dim A Dim i As Integer A=Array(1,2,3,4,5,6,7,8,9) For i=1 To 4 Print A(4+i); Next End Sub A. 1 2 3 4 B. 2 3 4 5 C. 5 6 7 8 D. 6 7 8 9 解答:C 参考答案: C 5. 单选题:(1.0分) 使用语句Dim A(5) As Integer声明数组A之后,以下说法正确的有_________。</p><h2>VB教材习题参考答案</h2><p>教材习题的参考答案 第1章 选择题 1 C 2 A 3 A 4 C 5 B 6 C 7 D 8 A 9 D 10 C 填空题 1.对象Windows 事件驱动 2.窗体工程 3.查看对象查看代码 4.CmdExam Click lbldisp 5.工具栏“启动”按钮菜单命令“运行|启动”F5键 6.命令按钮 7.Cancel 8.Label1 第2章 一、选择题 1 A 2 C 3 D 4 B 5 C 6 A 7 B 8 A 9 B 10 D 二、写出下列表达式的值 1、4 2、0 3、8 4、False 5、False 6、True 7、-1 8、16.7 9、“C”10、“Basic”11、“VISUAL ”12、5 三、将下列数学表达式改写成Visual Basic表达式 1、(a + b) / (c * d - Sqr(1 - a *a )) + 5^(1/3) * Cos(60*3.14/180) * Cos(60*3.14/180) 2、Sin(45 * 3.14159 / 180) + Abs(x - y) 3、2 * Exp(x) + Log(x * y) 4、(Log(50)/Log(10)-Log(20))/(9*Exp(3)) 5、Abs(X)>=Y and Abs(X)<>Z 6、M<100 And M>=0 7、A Mod 3 =0 Or A Mod 7 =0 8、N Mod 4 =0 And N Mod 100 <> 0 Or N Mod 400 = 0 第3章(P74) 选择题 1 CD 2 B 3 B 4B 5 C 6 A 7 D 8 BD 9 C 10 C 11 A 12 A 13 D 14 A 15 A 16 D 填空题 1. 出错 2. x=3 y=10 3. 4. 12345 54321;将数值a转换成字符串,并逆序输出 5. ABCDE 6. 32 7. (1)k (2)If x < n Then n = x: nk = i (3)mk (4) m</p><h2>第六章 vb6.0对话框的设计</h2><p>第六章对话框的设计 6.1 预定义对话框 在应用程序中添加对话框最容易的方法是使用预定义对话框,因为不必考虑设计、装载或者显示对话框方面的问题。然而,其控件在外观上要受到限制。预定义的对话框总是模式的。 表6.1中列出了在Visual Basic应用程序中添加预定义对话框时所使用的函数。 6.1.1 输入框InputBox函数用来产生要求输入数据的输入框;在输入框中显示提示文本、文本框和按钮;等待用户的输入或按下按钮,并返回用户在文本框中输入的内容。 如图6.1所示的输入框就是使用InputBox函数所产生的,用来提示用户输入要在窗体上显示的内容。 生成该输入框的代码如下所示: Word=InputBox(“请输入要在窗体中显示的内容:”、“输入”) 只需再做一点工作就可以将上面的文本输入框使用到程序中了。 实例6.1使用输入框。 在窗体中放置一个按钮控件,并设置它的Caption属性的值为“输入要显示的内容”,双击这个按钮控件打开它的代码窗口,编写如下代码: 个参数是指输入框中的用户提示字符串,第二个参数是指输入框的标题:InputBox(prompt[,title][,default][,spos][,ypos][,helpfile,context]) InputBox函数语法中的各参数的含义如表6.2所示。</p><p>如果同时提供了Helpfile与Context,用户可以按F1键来查看与Context相应的帮助主题。 如果用户单击输入框中的【确定】按钮,则InputBox函数返回文本框中的内容。如果用户单击【取消】按钮,则此函数返回一个长度为零的字符串(“”)。 如果要省略某些位置参数,则必须加入相应的逗号分界符。例如,要指定实例6.1中输入框的位置,而缺省输入框的初始值,则语句如下: word =InputBox(“请输入要在窗体中显示的内容:”,“输入”,200,200)。 6.1.2 消息框MsgBox函数用来产生一个消息框。消息框用来显示简短的消息,并要求用户作出一定的响应。例如,报告操作错误或向用户提示信息。看完这些消息以后,可选取一个按钮来关闭该对话框。 创建该消息框的代码如下: Msg=MsgBox(您没有在文本框中输入任何内容“48”提示)。 这里我们通过编写一个程序,来讲解如何在程序中使用MsgBox函数创建消息框。 实例6.2使用消息框 这个程序包含一个文本框和一个按钮,在文本框中输入内容后单击按钮,则所输入的内容就显示在窗体中;如果在文本框中没有输入任何内容,则单击按钮后会弹出一个提示框,告诉用户没有在文本框中输入任何内容,如图6.4所示。下面是编制这个小程序的具体过程。 首先,在窗体中放置一个文本框控件,设置它的Text属性的值为空,再放置一个按钮控件,设置它的Caption属性的值为“确定”.文本框与按钮的名称均使用系统默认的名称。双击按钮控件,打开代码窗口,为按钮的Click事件编写如下代码:</p><h2>VB课后习题第11章习题及答案</h2><p>习题十一及答案 习题十一 1.简答题 (1)Visual Basic有哪几种工作模式? (2)Visual Basic中错误类型有哪几种? (3)简要说明VB程序调试的主要方法和工具。 (4)“立即”窗口、“监视”窗口和“本地”窗口有什么区别? 2.判断题 (1)在VB集成环境中只有运行程序才能发现程序错误。 ( ) (2)设置错误的捕捉陷阱,指在程序中可能出现错误的地方放置捕捉语句来捕获产生错误的语句。 ( ) (3)On Error Resume Next语句的功能是忽略错误,继续往下执行。 ( ) (4)VB程序中出现编译错误时,不会产生错误提示。 ( ) 3.选择题 (1)当语句不符合文法规则时,出现的错误是()。 A)逻辑错误 B)运行时期错误 C)语法错误 D)以上都不对 (2)下列陈述中正确的是()。 A)中断点只能在设计过程中设置。 B)中断点只能在执行过程中设置。 C)中断点可以在设计过程或在执行过程中设置。 D)中断点可以在设计过程中设置,也可以在执行过程或中断过程中设置。 (3)下列属性中,属于Err对象的有()。 A) Number B) Caption C) Description D) Text 4.填空题 (1)设置断点的快捷键是。 (2)VB单步执行的快捷键是。 (3)错误码为11时表示发生的错误是。 5.编写一段程序,如果出现数组下标越界时,则给出错误的描述并结束程序的运行。 习题十一参考答案: 一、简答题 1.Visual Basic有哪几种工作模式? (1)设计模式 启动Visual Basic后,即进入设计模式,在主窗口标题栏上显示“设计”字样。建立一 个应用程序的所有步骤基本上都在设计模式下完成,包括窗体设计、建立控件、编写程序代 码以及利用属性窗口设置属性值或查看当前属性值等。但在设计阶段不能执行程序,也不能 使用调试工具,只可设置断点。 应用程序可以直接从设计阶段进入运行阶段,但不可以进入中断模式。 (2)执行模式 执行“运行”菜单中的“启动”命令(或按下F5键、或单击工具条上的“启动”按钮), 即进入执行模式,此时标题栏上原来显示“设计”的地方已被“运行”字样所代替。当整个 应用程序进入运行阶段后,开始执行程序代码。在运行阶段只可以执行代码,不能修改代码。 (3)中断模式</p><h2>vb练习题,电子版 第六章 常用标准控件(改)</h2><p>第六章常用标准控件 教学要求: 熟练掌握运用文本框控件、标签控件文本框和命令按钮控件进行编程;熟练掌握图片框、图像框的属性、事件和方法,掌握图形文件的装入的不同方法;掌握复选框和单选按钮的属性、事件和方法;掌握列表框和组和框的属性、事件和方法;能够使用计时器控件编程;了解滚动条控件的属性、事件和方法;理解框架控件的作用,能够使用直线和形状控件;理解焦点和Tab顺序的概念。 知识点: 标签和文本框控件,图片框、图像框的属性、事件和方法,图形文件的装入,直线和形状,按钮控件,复选框和单选按钮,列表框和组合框,滚动条,计时器,框架、直线和形状,焦点与Tab顺序。 内容导航: 一、文本控件 与文本有关的标准控件有标签和文本框。程序运行时标签中只能显示文本,用户不能进行编辑,而在文本框中既可显示文本,又可输入文本。 (一)标签 1.标签的属性 标签的部分属性与窗体及其他控件相同,包括:FontBold、FontItalic、FontName、FontSize 、FontUnderline 、Height、Left 、Name 、Top 、V isible、Width。 2.标签的事件和方法 标签和窗体及大多数控件一样具有许多方法,如Move方法、Drag方法以及Refresh方法;并且可以识别多种事件,如Click、DblClick等。 (二)文本框 文本框是一个文本编辑区域,在设计阶段或运行期间可以在这个区域中输入、编辑和显示文本,类似于一个简单的文本编辑器。 1.文本框属性 支持的属性除标准属性外,还有Text、Maxlength、Multiline 等属性。 2.文本框的事件 支持Change、GotFocus、LosttFocus和SetFocus事件 二、图形控件 Visual Basic中与图形有关的标准控件有4种,即图片框、图像框、直线和形状。(一)图片框和图像框 1.与窗体属性相同的属性 2.CurrentX和CurrentY属性 设置水平和垂直坐标,只能在运行期间使用 3.Picture属性 用于窗体、图片框、图像框,通过属性窗口设置,把图片放入这些对象中。4.Stretch属性 用于图像框,自动调节图像框中图形内容的大小。 (二)图形文件的装入</p><h2>vb课后答案(1)</h2><p>1.通过文本框TextBook1舒服一个实数,单击计算按钮,在TextBook2-6中分别输出该数的相反数,平方,绝对值平方根,立方以及绝对值的立方根。需要在文本框前添加注释文本框内的数据。 Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim x As Single x = TextBox1.Text TextBox2.Text = -x TextBox3.Text = x ^ 2 TextBox4.Text = System.Math.Sqrt(System.Math.Abs(x)) TextBox5.Text = x ^ 3 TextBox6.Text = (System.Math.Abs(x)) ^ (1 / 3) End Sub End Class 2.使用文本框Textbook1和Textbook2分别输入两个数,给变量X和Y赋值,单击交换按钮变换按钮,交换extbook1和Textbook2中的内容。 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim x, y, t As Integer x = TextBox1.Text y = TextBox2.Text t = x x = y y = t TextBox1.Text = x TextBox2.Text = y</p> <div> <div>相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="21756207"><a href="/topic/21756207/" target="_blank">vb第六章</a></li> <li id="5726396"><a href="/topic/5726396/" target="_blank">vb第六章答案</a></li> </ul> </div> </div> </div> <div class="container"> <div>文本预览</div> <div class="textcontent"> </div> </div> </div> <div class="category"> <span class="navname">相关文档</span> <ul class="lista"> <li><a href="/doc/8613346301.html" target="_blank">VB第6章GUI应用程序开发</a></li> <li><a href="/doc/ba14082114.html" target="_blank">vb练习题_电子版_第六章_常用标准控件(改)</a></li> <li><a href="/doc/1d6428292.html" target="_blank">vb第六章(过程)</a></li> <li><a href="/doc/5b16971511.html" target="_blank">vb第六章答案</a></li> <li><a href="/doc/9614012217.html" target="_blank">第六章 vb6.0对话框的设计</a></li> <li><a href="/doc/dd10759167.html" target="_blank">VB第6章 常用控件</a></li> <li><a href="/doc/483081180.html" target="_blank">VB第六章习题答案(上海立信会计学院)</a></li> <li><a href="/doc/7a7958353.html" target="_blank">VB程序设计教程(第三版)全第6章PPT教学课件</a></li> <li><a href="/doc/bd1895029.html" target="_blank">第六章 VB的过程设计教材</a></li> <li><a href="/doc/fc8686482.html" target="_blank">vb基本程序结构</a></li> <li><a href="/doc/0e18775371.html" target="_blank">VB程序设计第二版第六章</a></li> <li><a href="/doc/508869775.html" target="_blank">VB第6章-复习资料</a></li> <li><a href="/doc/9312187713.html" target="_blank">VB第六章数组</a></li> <li><a href="/doc/da7228647.html" target="_blank">第6章VB界面设计</a></li> <li><a href="/doc/3e4327814.html" target="_blank">VB第6章 数组</a></li> <li><a href="/doc/6714464416.html" target="_blank">VB第六章理论课件</a></li> <li><a href="/doc/a513025173.html" target="_blank">vb第六章2</a></li> <li><a href="/doc/e218236530.html" target="_blank">VB第六章测试题</a></li> <li><a href="/doc/4f7405021.html" target="_blank">第六章VB的过程设计讲解</a></li> <li><a href="/doc/9a9695079.html" target="_blank">vb第六章常用控件(三)</a></li> </ul> <span class="navname">最新文档</span> <ul class="lista"> <li><a href="/doc/0619509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0a19509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9619184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3319258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/d719211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/a519240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9019184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8819195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8319195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7b19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7019336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6819035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6819035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4219232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3b19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2a19396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2c19396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1619338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/e619066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/b019159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "aaed55ea172ded630b1cb629"; </script> <script type="text/javascript">bdtj();</script> <footer class="footer"> <p><a href="/tousu.html" target="_blank">侵权投诉</a> © 2022 www.doczj.com <a href="/sitemap.html">网站地图</a></p> <p> <a href="https://beian.miit.gov.cn" target="_blank">闽ICP备18022250号-1</a>  本站资源均为网友上传分享,本站仅负责分类整理,如有任何问题可通过上方投诉通道反馈 <script type="text/javascript">foot();</script> </p> </footer> </body> </html>