CreateDialog()
概述

函数功能:CreateDialog宏从一个对话框模板资源创建一个无模式的对话框,CreateDiaog宏使用CreateDialogParam函数。
函数原型:HWND CreateDialog(HINSTANCE hlnstance,LPCTSTR lpTemplate,HWND hWndParent,DLGPROC IpDialogFunc);
编辑本段
参数

hlnstance:标识模块事例,该模块的可执行文件含有对话框模板。
pTemplate: 标识对话框模板,此参数或是指向一个以结尾的字符串指针,该字符串指定对话框模板名,或是指定对话框模板的资源标识符的一个整型
值。如果此参数指定了一个资源标识符,则它的高位字一定为零,且低位字一定含有标识符,一定用MAKEINTRESOURCE宏来创建此值。
hWndParent: 标识拥有对话框的窗口。
lpDialogFunc: 指向对话框应用程序的指针。有关更多的对话框应用程序的指针,参见DialogProc。
返回值:如果函数调用成功,则返回值为指向对话框的句柄;如果函数调用失败,则返回值为NULL。若想获得更多的错误信息,可调用GetLastError函数。
编辑本段
备注

CreateDialog函数用CreateWindowEx函数来创建对话框。然后CreateDialog函数把一个WM_INITDIALOG消息
(如果模板指定DS_SETFONT类型,则加上一个WM_SETFONT消息)传送到对话框应用程序。如果模板指定WS_VISIBLE风格,则函数显
示对话框,最后CreateDlalog返回指向对话框的窗口句柄。CreateDialog函数返回之后,应用程序通过Showwindow函数显示对
话框(如果还没有显示)。应用程序通过利用DestroyWindow函数来清除对话框。Windows 95和以后版本:系统每个对话框模板可以支持最
多达 255个控件。如果要把多于255个控件放入对话框中,必须在WM_INITDIALOG消息处理器中创建控件,而不是把它们放入模板中。
Windows CE:IpTempIate参数指向的对话框模板中,DIGTEMPLATE结构并不支持所有类型。
速查:Windows NT:3.1及以上版本:Windows:95及以上版本:Windows CE:1.0及以上版本:头文
件:Winuser.h;库文件:user32.lib; Unicode: Unicode:在 Windows NT上实现为 Unicode和
ANSI两种版本。

CDialog::CreateIndirect

BOOL CreateIndirect(LPCDLGTEMPLATE lpDialogTemplate, CWnd* pParentWnd = NULL);
BOOL CreateIndirect(HGLOBAL hDialogTemplate, CWnd* pParentWnd = NULL);

返回值:
如果对话框创建和初始化成功,则返回非零值,否则为0。

参数: lpDialogTemplate 包含用于创建对话框的对话框模板的指针。该模板位于DLGTEMPLATE结构和控件信息表单中。有关该结构的更多信息,请参阅联机文档“Win32 SDK”。  
pParentWnd 指向含有对话框的父窗口对象的指针。如果为NULL,对话框对象的父窗口设置为应用的主窗口。  
hDialogTemplate 包含对话框模板的全局内存的句柄。模板使用DLGTEMPLATE结构的形式。

说明:
调用该成员函数从对话框模板中创建一个非模态对话框。
当创建对话框后,CreateIndirect成员函数立即返回。
在父窗口中创建之后,如果要求对话框出现,则使用模板中的WS_VISIBLE风格。否则,必须调用ShowWindow。其它对话框风格及应用,请参阅
联机文档“Win32 SDK”中的DIATEMPLATE结构和“Microsoft Visual C++ 6.0 MFC类库参考(二)”中的
“Windows风格”。使用CWnd::DestroyWindow函数删除由CreateIndirect创建的对话框。

CreateDialog()与CreateDialogIndrect()的更多相关文章

  1. CreateDialog和DialogBox

    原文地址:https://blog.csdn.net/aikker/article/details/5631412 INT_PTR DialogBox(          HINSTANCE hIns ...

  2. CreateDialog 注意事项

    CreateDialog创建非模态对话框时 其内部 会发送几条消息例如: WM_INITDIALOG,WM_SETFONT  DS_SETFONT , DS_SHELLFONT. 所以如果在另一个Ca ...

  3. CreateDialog Win32 API调用的一个小问题

    在老版本号的VC编译器上.关键调用是下面2句: InitCommonDialogs(); HWND hwndDialog = CreateDialog(hInstance, "IDD_XXX ...

  4. NX二次开发CreateDialog函数在UI.hxx文件和WinUser.h中的冲突【转载】

    文章出自https://blog.csdn.net/qq_41843732/article/details/91422764 在UG二次开发中,若使用MFC库,一旦加上#include<Afx. ...

  5. Javascript设计模式学习二(单例)

    定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点 普通的单例模式: 使用一个变量来标记当前是否已经为某个类创建过对象,如果是的话,在下一次获取该类的实例时,直接返回之前创建的对象.比如:使用 ...

  6. 2016最后一贴,终于调通一个测试示例,并发现一个BUG???

    真的难点在于第一次调通.纠结五天,终于搞出界面. 也发现了一个书上代码,编辑用户时死活不通的情况,我将Links去了,改在data里,我X,,全OK了.. 原来的代码: onAdd: function ...

  7. Xamarin.Android之给我们的应用加点过渡效果

    零.前言 试想一下,我们的应用正在请求一些数据,假设网络不是很好,要花比较长的时间等待,这个时候界面什么反应也没有, 一动不动,用户可能就会认为应用挂掉了,这么久都没反应的,说不定下一分钟用户就把它卸 ...

  8. android.app.Activity阅读摘要,有时候会不会需要保持一些现场数据呢? 想让系统帮你退出到后台或者挂掉前做些前置保持工作吗,重点参考吧:

    * * @param savedInstanceState If the activity is being re-initialized after * previously being shut ...

  9. Microsoft Win32 to Microsoft .NET Framework API Map

    Microsoft Win32 to Microsoft .NET Framework API Map .NET Development (General) Technical Articles   ...

随机推荐

  1. Nunit与Vs 2012配合使用

    要使用Nunit首先要去官网 http://www.nunit.org/ 下载Nunit.win  .msi是安装版.   bin  .zip是绿色版. 下载完后安装. 在 VS2012 中使用 Nu ...

  2. 脱离SVN的控制

    在桌面创建一个记事本文件,然后吧这句话复制进去for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn ...

  3. java多线程实例(2)

    public class ThreadDemo05 { public static void main(String args[]) { // 四个售票点应该控制同一个资源 Demo d = new ...

  4. 疯狂JAVA——第四章 流程控制与数组

    4.5 数组类型 数组也是一种类型.它本身是引用类型.例如int是一种基本类型,int[]就是引用类型. 两种定义数组的方式: 1.type[] arrayName; 2.type arrayName ...

  5. 大型运输行业实战_day09_1_日期转换与My97DatePicker插件使用

    1.日期转换 1.1字符串类型转换成时间Date类型 /** * 给定字符串 转变 为 Date 类型 * @param date 时间 * @param format 时间格式 如:yyyy-MM- ...

  6. Eclipse生成jar文件

    很多人都不知道怎么在Eclipse下生成jar文件,或者生成了jar文件后又老是用不了,总是会收到 Exception in thread "main" Java.lang.NoC ...

  7. mysql 常用option

    [mysql 常用option] --host=host_name, -h host_name Connect to the MySQL server on the given host. --por ...

  8. Hibernate实体映射转换列值

    @Column(name="ADDTIME", insertable=false, updatable=false)@ColumnTransformer(read="CA ...

  9. Python3 exec 函数

    Python3 exec 函数  Python3 内置函数 描述 exec 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码. 语法 以下 ...

  10. python之列表【list】

    这里介绍下列表的功能 #切片:列表[a:b],从下标为a开始,到下标为(b-1)的元素 # name = [0,1,2,3,4,5,6,7,8,9] # print(name[1:6]) # # 结果 ...