Delphi中的消息对话框
(一)showmessage()
只有一个OK按钮,括号中填入希望提示的字符串
例:showmessage(‘除数不能为0!!’);
(二)messageBox()
1、函数原型及参数
function MessageBox(hWnd: HWND, Text, Caption, Type: Word): Integer;
hWnd:对话框父窗口句柄,对话框显示在Delphi窗体内,可使用窗体的Handle属性,否则可用0,使其直接作为桌面窗口的子窗口。
Text:欲显示的信息字符串。
Caption:对话框标题字符串。
Type:对话框类型常量(可以是多个常量的组合)。
该函数的返回值为整数,用于对话框按钮的识别。
例:
MessageBox(handle,'确认删除吗?','此处是对话框标题',MB_ICONQUESTION+MB_YesNo);
MB_ICONQUESTION是图标常量‘?’ MB_YesNo是两个按钮,一个是一个否
2、类型常量
对话框的类型常量可由按钮组合、缺省按钮、显示图标、运行模式四种常量组合而成。
(1)按钮组合常量
MB_OK = $00000000;//一个确定按钮
MB_OKCANCEL = $00000001;//一个确定按钮,一个取消按钮
MB_ABORTRETRYIGNORE = $00000002;//一个异常终止按钮,一个重试按钮,一个忽略按钮
MB_YESNOCANCEL = $00000003;//一个是按钮,一个否按钮,一个取消按钮
MB_YESNO = $00000004;//一个是按钮,一个否按钮
MB_RETRYCANCEL = $00000005;//一个重试按钮,一个取消按钮
(2)缺省按钮常量
MB_DEFBUTTON1 = $00000000;//第一个按钮为缺省按钮
MB_DEFBUTTON2 = $00000100;//第二个按钮为缺省按钮
MB_DEFBUTTON3 = $00000200;//第三个按钮为缺省按钮
MB_DEFBUTTON4 = $00000300;//第四个按钮为缺省按钮
(3)图标常量
MB_ICONHAND = $00000010;//“×”号图标
MB_ICONQUESTION = $00000020;//“?”号图标
MB_ICONEXCLAMATION = $00000030;//“!”号图标
MB_ICONASTERISK = $00000040;//“i”图标
MB_USERICON = $00000080;//用户图标
MB_ICONWARNING = MB_ICONEXCLAMATION;//“!”号图标
MB_IConERROR = MB_ICONHAND;//“×”号图标
MB_ICONINFORMATION = MB_ICONASTERISK;//“i”图标
MB_ICONSTOP = MB_ICONHAND;//“×”号图标
(4)运行模式常量
MB_APPLMODAL = $00000000;//应用程序模式,在未结束对话框前也能切换到另一应用程序
MB_SYSTEMMODAL = $00001000;//系统模式,必须结束对话框后,才能做其他操作
MB_TASKMODAL = $00002000;//任务模式,在未结束对话框前也能切换到另一应用程序
MB_HELP = $00004000;//Help Button
3、函数返回值
0//对话框建立失败
idOk = 1//按确定按钮
idCancel = 2//按取消按钮
idAbout = 3//按异常终止按钮
idRetry = 4//按重试按钮
idIgnore = 5//按忽略按钮
idYes = 6//按是按钮
idNo = 7//按否按钮
强制类型转换与代码共享
当有多个控件要实现相同的功能时,使用as关键字进行强制类型转换,只用为一个控件编写代码即可,其他控件共享此代码。
例:让一组文本编辑框得到输入焦点时背景颜色变化,失去焦点时恢复对edit1
Edit2则共享此段代码
共享实现:
1.选中edit2
2.在Object Inspector中选择events
3.在OnEnter和OnExit分别选择Edit1Enter和Edit1Exit
结果: