reactos操作系统实现(176)

前端之家收集整理的这篇文章主要介绍了reactos操作系统实现(176)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

MessageBox函数是一个非常简单提示性窗口函数,那么它是怎么实现显示窗口的呢?现在就来分析它的实现代码,如下:

#001 int

#002 WINAPI

#003 MessageBoxW(

#004 HWND hWnd,

#005 LPCWSTR lpText,

#006 LPCWSTR lpCaption,

#007 UINT uType)

#008 {

在这里主要调用函数MessageBoxExW来实现。

#009 return MessageBoxExW(hWnd,lpText,lpCaption,uType,LANG_NEUTRAL);

#010 }

MessageBoxExW函数实现如下:

#001 int

#002 WINAPI

#003 MessageBoxExW(

#004 HWND hWnd,

#007 UINT uType,

#008 WORD wLanguageId)

#009 {

定义一个消息框的结构。

#010 MSGBoxPARAMSW msgBox;

#011

设置结构大小,以便实现不同版本兼容。

#012 msgBox.cbSize = sizeof(msgBox);

设置本窗口属于那个窗口的句柄。

#013 msgBox.hwndOwner = hWnd;

设置进程实例为空。

#014 msgBox.hInstance = 0;

设置提示性的文字

#015 msgBox.lpszText = lpText;

窗口显示标题

#016 msgBox.lpszCaption = lpCaption;

窗口显示的类型。

#017 msgBox.dwStyle = uType;

窗口图标为空。

#018 msgBox.lpszIcon = NULL;

窗口帮助索引为空。

#019 msgBox.dwContextHelpId = 0;

窗口回调函数也为空。

#020 msgBox.lpfnMsgBoxCallback = NULL;

不同的语言显示

#021 msgBox.dwLanguageId = wLanguageId;

#022

调用函数MessageBoxTimeoutIndirectW进一步显示

#023 return MessageBoxTimeoutIndirectW(&msgBox,(UINT)-1);

#024}

原文链接:https://www.f2er.com/react/308345.html

猜你在找的React相关文章