第三章  赋值与输入 / 输出
双击滚屏  关闭窗口

 

3.6 使用对话框

  3.6.1 输入对话框
  3.6.2 消息对话框


3.6 使用对话框

对话框是程序与用户进行交互的重要途径。对话框即可以用来显示信息,也可以用来输入信息。在 VB 中能够建立两种预制对话框:输入对话框和消息对话框。这两种对话框的实现都只需使用系统提供的函数( InputBox 和 MsgBox ),而不必为对话框另建窗体。

3.6.1 输入对话框

InputBox 函数用于产生一个能接收用户输入的对话框,其语法格式如下:

变量 =InputBox( 提示 [ ,标题 ][ ,默认值 ][ , xpos][ , ypos])

其中:

( 1 )“提示”指定在对话中显示的文本。

( 2 )“标题”指定对话框的标题。

( 3 )“默认值”用于指定输入框(用于输入内容的文本框)中显示的默认文本。

( 4 ) xpos 和 ypos 分别指定对话框的左边和上边与屏幕左边和上边的距离。

例如下列语句:

filename$=InputBox(“ 请输入文件名(不超过 8 个字符) ”,” 文件名 ”,”vbfile”)

将产生一个如图 3.9 所示的输入对话框。

               

图 3.9 输入对话框

                        
3.6.2 消息对话框


使用 MsgBox 函数可以产生一个对话框来显示消息(见图 3.11 )。当用户单击某个按钮后,将返回一个数值以标明用户单击了哪个按钮。其语法格式是:

变量 =MsgBox( 提示 [ ,对话框类型 [ ,对话框标题 ]])

其中:

( 1 )“提示”指定在对话中显示的文本。

( 2 )“对话框标题”指定对话的标题。图 图 3.11 消息对话框

( 3 )“对话框类型”指定对话中出现的按钮和图标,一般有 3 个参数,其取值和含义见表 3.2 、表 3.3 和表 3.4 。

表 3.2 参数 1 ── 出现按钮


符 号 常 量

显示的结果

0

vbOKOnly

“确定”按钮

1

vbOKCancel

“确定”和“取消” 按钮

2

vbAbortRetryIgnore

“终止”、“重试”和“忽略” 按钮

3

vbYesNoCancel

“是”、“否”和“取消” 按钮

4

vbYesNo

“是”和“否” 按钮

5

vbRetryCancel

“重试”和“取消” 按钮

表 3.3 参数 2 ──图标类型


符 号 常 量

显示的图标

16

vbCritical

停止图标

32

vbQuestion

问号(?)图标

48

vbExclamation

感叹号(!)图标

64

vbInformation

消息图标

表 3.4 参数 3 ── 默认按钮


符 号 常 量

默认的活动按钮

0

vbDefaultButton1

第一个按钮

256

VbDefaultButton2

第一个按钮

512

VbDefaultButton3

第一个按钮

这 3 种参数值决定了对话框的模式。可以把这些参数值(每组只取一个值)相加以生成一个组合的按钮参数值。例如:

y=Msgbox(“ 输入的文件名是否正确 ”,52,” 请确认 ”)

显示的对话框如图 3.11 所示。

( 4 ) MsgBox 返回值指明了用户在对话框中选择了哪一个按钮,如表 3.5 所示。

表 3.5 函数返回值

返回值

符 号 常 量

所对应的按钮

1

vbOk

“确定”按钮

2

vbCancel

“取消“按钮

3

vbAbort

“终止”按钮

4

vbRetry

“重试”按钮

5

vVbIgnore

“忽略”按钮

6

vVbYes

“是”按钮

7

vbNo

“否”按钮

( 5 )选项中的值可以是数值,也可以是符号常量。

( 6 )如果省略了某一选项,必须加入相应的逗号分隔符。

( 7 )若不需要返回值,则可以使用 MsgBox 的语句格式。

[ 例 3.5] 设计应用程序,由用户从输入框输入圆的半径,输出圆的周长的面积。

( 1 )创建应用程序用户界面和设置对象属性。如图 3.12 所示。

         

图 3.12 例 3.5 的运行结果

( 2 )编写两个命令按钮的单击事件过程代码如下:

Private Sub Command1_Click()

Dim r As Single, k As Single, s As Single

r = Val(InputBox(" 请输入圆的半径 ", " 计算圆的周长的面积 "))

k = 2 * 3.1415926 * r

s = 3.1415926 * r * r

Text1.Text = k

Text2.Text = s

MsgBox " 计算已完成 ", , " 例 3.5"

End Sub

Private Sub Command2_Click()

End

End Sub


 
双击滚屏  关闭窗口
 
版权所有数学与信息科学学院