加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

WinCC 如何创建 Windows MessageBox 并且确定操作员按下的是哪个按钮?

(2011-04-06 23:56:28)
标签:

杂谈

分类: WinCC

 

说明:
使用动态向导“Picture Functions > Display error box”可以创建在 WinCC 运行系统中显示 Windows MessageBox 的 C 脚本。使用该向导生成的 C 脚本使用的是 Windows API 函数“MessageBox()”。关于这个函数的详细信息可从 Microsoft 的“MSDN Library”中获得。

MessageBox() 函数的参数:
MessageBox 的显示受以下这些参数的影响。

参数描述

HWND hWnd
父窗口的处理
零 = 消息没有父窗口

LPCTSTR lpText
消息文本

LPCTSTR lpCaption
文本的标题
如果该参数设为零,标题将使用默认的文本“Error”。

UINT uType
MessageBox 的类型;
这个参数定义了 MessageBox 的外观和行为。它是不同“Flags”的组合(逐位进行“或”操作)。 以下列出了一些主要的标记:

MB_OK,
MB_OKCANCEL,
MB_YESNO,
MB_YESNOCANCEL,
MB_ABORTRETRYIGNORE,
MB_CANCELTRYCONTINUE,
MB_HELP,
MB_RETRYCANCEL
使用这些标记中的一个可以定义 MessageBox 中显示哪些按钮。

MB_ICONEXCLAMATION,
MB_ICONQUESTION,
MB_ICONWARNING,
MB_ICONINFORMATION,
MB_ICONQUESTION,
MB_ICONASTERISK,
MB_ICONSTOP,
MB_ICONERROR,
MB_ICONHAND
使用这些标记中的一个可以定义 MessageBox 中显示的图标。

MB_DEFBUTTON1,
MB_DEFBUTTON2,
MB_DEFBUTTON3,
MB_DEFBUTTON4
使用这些标记中的一个可以定义默认的按钮。

MB_SETFOREGROUND
MessageBox 显示在最前面。

MB_SYSTEMMODAL
MessageBox 定义为系统模式。消息直到确认之前一直显示在最前面。

重要事项:
“MB_SYSTEMMODAL”标记应该总用于避免发生阻塞整个系统的可能。

MessageBox() 函数的返回值:

返回值
描述

IDABORT,
IDCANCEL,
IDCONTINUE,
IDIGNORE,
IDNO,
IDOK,
IDRETRY,
IDTRYAGAIN,
IDYES
函数的返回值是“int”类型并告知操作员按下的是哪个按钮。

注意事项

如果 MessageBox 有“Cancel”键,并且操作员使用“ESC”键终止 MessageBox,系统将返回 IDCANCEL 的值。

如果函数使用失败,将返回“0”。更多的错误信息可通过调用“GetLastError()”函数获得。

如果函数调用成功,函数将返回左边给出的某个值(常数)中的一个。

 

下图显示了如何使用“MessageBox()”函数以及如何评价函数返回值。

http://support.automation.siemens.com/CN/llisapi.dll/csfetch/268859/WinCC_MessageBoxUse_01.gif?func=cslib.csFetch&nodeid=22957080如何创建 Windows MessageBox 并且确定操作员按下的是哪个按钮?" TITLE="WinCC 如何创建 Windows MessageBox 并且确定操作员按下的是哪个按钮?" />

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有