二、弹出模式化对话框
在Delphi中,提供模式化对话框的方法很多,现对几种比较常用的方法做如下比较:
1) 直接调用Windows API 函数MessageBox
该方法一般情况下使用正常,而且根据不同的操作系统将显示相应的中文或英文按钮标题。而在笔者曾经开发的系统中,偶尔会出现该函数没有锁定 Handle所指的窗口的情况。通过观察发现,当入口参数的窗口句柄是Application.MainForm的窗口句柄时,没有出现类似情况。因此, 建议大家甚用。
2) 调用Delphi提供的函数MessageDlg
该方法的不足之处是,对话框的按钮标题是英文。
3) 调用Delphi提供的过程ShowMessage
该方法默认将应用程序的标题作为对话框的标题,并且仅仅是信息提示框,不太灵活。
4) 调用函数Application.MessageBox
该方法是笔者强力推荐使用的方法。该方法的使用效果与Windows API 函数MessageBox完全相同,并且不会出现有时没有锁定当前活动窗口的情况。
例如:
Aplication.MessageBox(Handle, '这是一条警告信息。', '警告', MB_OK + MB_ICONEXCLAMATION);
转自bbs.sendsms.cn
来源:oschina
链接:https://my.oschina.net/u/2350101/blog/550079