BOOL Create(LPCTSTR lpszClassName,
LPCTSTR lpszWindowName, DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd, UINT nID,
CCreateContext* pContext = NULL)
//解释函数
BOOL Create(LPCTSTR lpszClassName,   你的窗口类名,写你注册窗口类的时候的类名
LPCTSTR lpszWindowName,       你的窗口名字,随便写
DWORD dwStyle,            窗口风格,详细定义在window.h中
const RECT& rect,      窗口长宽 是个RECT结构
CWnd* pParentWnd,     父窗口句柄,没有就NULL 
UINT nID,        窗口id,记0
CCreateContext* pContext = NULL 保留
)

第一个参数lpszClassName是一个窗体类名字符串的指针(一个WNDCLASS②结构体)。
此类名可以是任意的由全局函数AfxRegisterWndClass注册过的预定义控件类名。
如果为空,则使用CWnd类的默认属性。
第二个参数lpszWindowName是作为窗体标题的字符串指针。
第三个参数dwStyle是宏定义的窗体类型,具体定义如下:

WS_BORDER 创建一个有边框的窗体。

WS_CAPTION 创建一个有标题栏的窗体(隐含了WS_BORDER). 不能和WS_DLGFRAME
   一起使用.

WS_CHILD 创建一个子窗体。不能和WS_POPUP一起使用。

WS_CLIPCHILDREN 不包括在父窗体中被子窗体占用的区域。用于创建父窗体。

WS_CLIPSIBLINGS 使子窗体彼此别住;就是当一个指定的子窗体接收到一个
   paint消息时,WS_CLIPSIBLINGS类型将别住所有重叠的子窗
   体超过区域的部分一起更新,(如果没有使用WS_CLIPSIBLINGS
   并且子窗体重叠,当你在一个子窗体的客户区绘图时,可能
   会绘图到邻近的子窗体的客户区。)只与WS_CHILD一起使用。

WS_DISABLED 创建一个初始不可用的窗体。

WS_DLGFRAME 创建一个有双边但无标题的窗体。

WS_GROUP 指定一个用户可以用方向键从一个控件移到另一个控件的控
   件组的第一个控件。All controls defined with the WS_GROUP
   style FALSE after the first control belong to the same
   group. The next control with the WS_GROUP style starts
   the next group (that is, one group ends where the next
   begins).

WS_HSCROLL 创建一个带水平滚动条的窗体。

WS_MAXIMIZE 创建一个最大尺寸的窗体。

WS_MAXIMIZEBOX 创建一个有最大化按扭的窗体。

WS_MINIMIZE 创建一个初始最小化的窗体。只与WS_OVERLAPPED一起使用。

WS_MINIMIZEBOX 创建一个有最小化按扭的窗体。

WS_OVERLAPPED 创建一个重叠窗体。一个重叠窗体一般有标题和边框。

WS_OVERLAPPEDWINDOW 创建一个和WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU,
   WS_THICKFRAME, WS_MINIMIZEBOX, and WS_MAXIMIZEBOX一
   使用的重叠窗体。

WS_POPUP 创建一个弹出式窗体。不能和WS_CHILD一起使用。

WS_POPUPWINDOW 创建一个和WS_BORDER, WS_POPUP, and WS_SYSMENU一起使
   用的弹出式窗体。WS_CAPTION必须和WS_POPUPWINDOW组合使
   用才能让控件菜单可见。

WS_SYSMENU 创建一个在标题栏有控件菜单框的窗体。只能和有标题栏的
   窗体一起使用。

WS_TABSTOP 指定任意数量控件中的一个可以由用户使用TAB键移动到的
   控件。TAB键使用户移动到由WS_TABSTOP指定的下一个控件。

WS_THICKFRAME 创建一个有厚边框的Window,使其可以改变大小。

WS_VISIBLE 创建一个初始可见的窗体。

WS_VSCROLL 创建一个有垂直滚动条的窗体。

由于上表中常量可以进行组合,用按位或运算,所以常量名的值被定义为类似于
0x00C00000L的32位16进制数型式。例如进行WS_SYSMENU|WS_MINIMIZEBOX运算时即
0x00080000L|0x00020000L。数字前面的0x是16位数的标识符,L表示32位,上式的演
算式可表示如下:

=
00000000000010000000000000000000
    (|) 00000000000000100000000000000000
------------------------------------------
        00000000000010100000000000000000 = 0X000A0000L = 655360;

当你用十进制数655360替代WS_SYSMENU|WS_MINIMIZEBOX作为实参时,你会看到相
同的结果。

第四个参数rect是一个RECT结构体的对象,用于指定窗体的尺寸和位置。RECT结
构体的定义如下:

typedef struct tagRECT
{
    LONG    left;
    LONG    top;
    LONG    right;
    LONG    bottom;
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT;

我们可以利用从tagRECT结构体派生出的CRect类的构造函数来初始化一个RECT结构
体。CRect的一个重载构造函数定义如下:

// from left, top, right, and bottom
CRect(int l, int t, int r, int b);

第五个参数pParentWnd用于指定父窗体,这是一个指向CWnd类对象的指针。
第六个参数nID用于指定作为子窗体的窗体ID。
最后一个参数是关于创建内容的指针,已被默认为NULL,不用理会。

Create的更多相关文章

  1. 记一次tomcat线程创建异常调优:unable to create new native thread

    测试在进行一次性能测试的时候发现并发300个请求时出现了下面的异常: HTTP Status 500 - Handler processing failed; nested exception is ...

  2. Could not create SSL connection through proxy serve-svn

    RA layer request failedsvn: Unable to connect to a repository at URL xxxxxx 最后:Could not create SSL ...

  3. android 使用Tabhost 发生could not create tab content because could not find view with id 错误

    使用Tabhost的时候经常报:could not create tab content because could not find view with id 错误. 总结一下发生错误的原因,一般的 ...

  4. Create a Team in RHEL7

    SOLUTION VERIFIED September 13 2016 KB2620131 Environment Red Hat Enterprise Linux 7 NetworkManager ...

  5. Create a bridge using a tagged vlan (8021.q) interface

    SOLUTION VERIFIED April 27 2013 KB26727 Environment Red Hat Enterprise Linux 5 Red Hat Enterprise Li ...

  6. [转]nopCommerce Widgets and How to Create One

    本文转自:https://dzone.com/articles/what-are-nopcommerce-widgets-and-how-to-create-one A widget is a sta ...

  7. Git异常:fatal: could not create work tree dir 'XXX': No such file or directory

    GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...

  8. SQL Server 在多个数据库中创建同一个存储过程(Create Same Stored Procedure in All Databases)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 遇到的问题(Problems) 实现代码(SQL Codes) 方法一:拼接SQL: 方法二: ...

  9. SharePoint 2013 create workflow by SharePoint Designer 2013

    这篇文章主要基于上一篇http://www.cnblogs.com/qindy/p/6242714.html的基础上,create a sample workflow by SharePoint De ...

  10. Create an offline installation of Visual Studio 2017 RC

    Create an offline installation of Visual Studio 2017 RC ‎2016‎年‎12‎月‎7‎日                             ...

随机推荐

  1. msp430项目编程13

    msp430中项目---温湿度检测系统 1.dht11工作原理 2.电路原理说明 3.代码(显示部分) 4.代码(功能实现) 5.项目总结 msp430项目编程 msp430入门学习

  2. OC-scrollview加载多个控制器界面的优化

    在开发过程中,经常有一个控制器中多个字控制器界面的管理,如下图: 这种实现方式,很多种,今天主要记录用scrollview实现的方法.并且只加载当前显示界面的数据. 思路: (1)创建3个需要展示的控 ...

  3. 最长不下降子序列 (O(nlogn)算法)

    分析: 定义状态dp[i]表示长度为i的最长不下降子序列最大的那个数. 每次进来一个数直接找到dp数组第一个大于于它的数dp[x],并把dp[x - 1]修改成 那个数.就可以了 AC代码: # in ...

  4. 寒武纪camp网络测试赛

    寒武纪camp网络测试赛 地址:oj点我进入 A(树形dp+树链剖分) 题意: 分析: 考虑树形dp,f0(x)和f1(x)分别表示以x为根的子树,不取x点或取x点的最大合法子集的元素个数 那么对于一 ...

  5. Spring中使用byType实现Beans自动装配

    以下内容引用自http://wiki.jikexueyuan.com/project/spring/beans-auto-wiring/spring-autowiring-byType.html: 此 ...

  6. java验证身份证号码是否有效源代码

    原文:http://www.open-open.com/code/view/1420373343171 1.描述 用java语言判断身份证号码是否有效,地区码.出身年月.校验码等验证算法 2.源代码 ...

  7. html5开发手机打电话发短信功能

    原文:http://www.open-open.com/code/view/1449843459332 在很多的手机网站上,有打电话和发短信的功能,对于这些功能是如何实现的呢.其实不难,今天我们就用h ...

  8. iphone5s 耳机更换插头 EarPods change jack

    iphone5s 耳机使用了不到两年,出现了接头接触不良,话筒线短路的状况,经常自动出现暂停或者siri.买了一个新耳机,这几天有时间,把旧耳机修好了,更换了一个新的插头.   工具/原料   剥线钳 ...

  9. axis client tomcat jsp调用最少jar

    tomcat调用和main方法调用不同在于引入的jar不一样.tomcat引入的jar是全部lib以下的jar包,main是project引入的jar.假设直接进行公布lib下的全部jar都会引入到p ...

  10. Opengl ES 1.x NDK实例开发之七:旋转的纹理立方体

    开发框架介绍请參见:Opengl ES NDK实例开发之中的一个:搭建开发框架 本章在第六章(Opengl ES 1.x NDK实例开发之六:纹理贴图)的基础上绘制一个旋转的纹理立方体,原理和纹理贴图 ...