Application.messagebox

本文详细介绍了在Visual FoxPro中使用Application.MessageBox()函数的方法。包括如何设置不同的按钮组合、图标样式及默认按钮,并展示了如何通过参数获取用户点击的按钮值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Application.MessageBox() 的用法
By  zhangjl 发表于 2006-3-4 12:06:37 

Application.MessageBox('已经输入了考生信息,不能重新选择学校。'+#13+'要重新选择学校,必须清除所有考生信息!','警告:',mb_ok+mb_iconAsterisk);

Value   Meaning
==============================================================================================
MB_ABORTRETRYIGNORE The message box contains three push buttons: Abort, Retry, and Ignore.
MB_OK   The message box contains one push button: OK. This is the default.
MB_OKCANCEL  The message box contains two push buttons: OK and Cancel.
MB_RETRYCANCEL  The message box contains two push buttons: Retry and Cancel.
MB_YESNO  The message box contains two push buttons: Yes and No.
MB_YESNOCANCEL  The message box contains three push buttons: Yes, No, and Cancel.

数值   意思
=======================================================
+MB_iconInformation
+MB_iconAsterisk 出现惊叹号(警告)
+MB_IcoStop
+MB_IcoHand  出现X符号
+MB_IcoQuistion  出现问号

MessageBox returns 0 if there isn抰 enough memory to create the message box. Otherwise it returns one of the following values:

Value Numeric value Meaning
====================================
IDOK  1 The user chose the OK button.
IDCANCEL 2 The user chose the Cancel button.
IDABORT  3 The user chose the Abort button.
IDRETRY  4 The user chose the Retry button.
IDIGNORE 5 The user chose the Ignore button.
IDYES  6 The user chose the Yes button.
IDNO  7 The user chose the No button.

cMessageText

指定在对话框中显示的文本。在 cMessageText 中包含回车符 (CHR(13)) 可以使信息移到下一行显示。对话框的高度和宽度根据 cMessageText 适当增大,以包含全部信息。

nDialogBoxType

指定对话框中的按钮和图标、显示对话框时的默认按钮以及对话框的行为。
在下面的表中,对话框按钮值从 0 到 5 指定了对话框中显示的按钮。图标值 16、32、64 指定了对话框中的图标。默认值 0、256、512 指定对话框中哪个按钮为默认按钮。当显示对话框时选中此默认按钮。
当省略 nDialagBoxType 时,等同于指定 nDialagBoxType 值为0。

数值    对话框按钮
0    仅有“确定”按钮
1    “确定”和“取消”按钮
2    “放弃”、“重试”和“忽略”按钮
3    “是”、“否”和“取消”按钮
4    “是”、“否”按钮
5    “重试”和“取消”按钮
数值    图标
16    “停止”图标
32    问号
48    惊叹号
64    信息 (i) 图标

数值    默认按钮
0    第一个按钮
256    第二个按钮
512    第三个按钮

nDialogBoxType 可以是三个值的和从上面每个表中选一个值。例如,若 nDialogBoxType 为 290(
2+32+256),则指定的对话框含有如下特征:

?   “放弃”、“重试”或“忽略”按钮。
?   消息框显示问号图标。
?   第二个按钮,“重试”为默认按钮。

cTitleBarText

指定对话框标题栏中的文本。若省略 cTitleBarText,标题栏中将显示“Microsoft Visual FoxPro”

返回值类型

数值型

说明

MESSAGEBOX( ) 的返回值标明选取了对话框中的哪个按钮。在含有取消按钮的对话框中,如果按下 ESC 键退出对话框,则与选取“取消”按钮一样,返回值 (2)。
注意本函数的最短缩写为 MESSAGEB( )。
下表列出了 MESSAGEBOX( ) 对应每个按钮的返回值。

返回值    按钮
1    确定
2    取消
3    放弃
4    重试
5    忽略
6    是
7    否


可在命令窗口中具体试试如下代码:

MESSAGEBOX("试验", 3+64+512, "aaa")
                   |  |  |
                   |  |  0 256 512 
                   |  16 32 48 64
                    0 1 2 3 4 5

### 自定义 HandyControl.Controls.MessageBox 样式 为了自定义 `HandyControl.Controls.MessageBox` 的样式,在应用程序中可以通过资源字典来实现这一目标。具体方法是在项目的资源文件(通常是 App.xaml 或者单独的 ResourceDictionary 文件)中定义新的样式并将其应用于消息框。 #### 定义新样式 在 XAML 中创建一个新的样式,该样式基于现有的 `MessageBoxCustom` 并对其进行扩展或覆盖某些属性: ```xml <Application.Resources> <!-- 引入 HandyControl 命名空间 --> <ResourceDictionary xmlns:hc="https://handyorg.github.io/handycontrol"> <Style TargetType="{x:Type hc:MessageBox}" BasedOn="{StaticResource MessageBoxCustom}"> <!-- 设置背景颜色为例 --> <Setter Property="Background" Value="#FFD700"/> <!-- 更改按钮字体大小 --> <Setter Property="FontSize" Value="18"/> <!-- 可以为其他控件设置更多样式选项 --> </Style> </ResourceDictionary> </Application.Resources> ``` 上述代码片段展示了如何通过继承默认样式的做法来自定义 `HandyControl.Controls.MessageBox` 控件的外观[^1]。 对于更复杂的定制需求,比如改变布局结构,则可能需要复制整个模板,并根据自己的设计调整各个部分的位置和行为。这通常涉及到提取控件模板并在其中做必要的更改。 当完成这些配置之后,所有调用 `HandyControl.Controls.MessageBox.Show()` 方法的地方都会自动应用这个新的样式而无需额外编码处理[^2]。 另外,在项目中的任何地方都可以方便地使用此自定义的消息框风格,只需确保已经正确引入了相应的命名空间以及设置了全局可用的资源字典即可[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值