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. 安卓巴士Android开发神贴整理

    10个经典的Android开源应用项目 http://www.apkbus.com/android-13519-1-1.html 安卓巴士总结了近百个Android优秀开源项目,覆盖Android开发 ...

  2. msp430项目编程21

    msp430中项目---直流电机控制系统 1.定时器工作原理 2.电路原理说明 3.代码(显示部分) 4.代码(功能实现) 5.项目总结 msp430项目编程 msp430入门学习

  3. Rem 字体设置学习一

    JS方法动态计算根元素的字体大小: [淘宝首页:m.taobao.com] (function (doc, win) { var docEl = doc.documentElement, resize ...

  4. 为什么zookeeper的节点配置的个数必须是奇数个?

    zookeeper有这样一个特性:集群中只要有过半的机器是正常工作的,那么整个集群对外就是可用的.也就是说如果有2个zookeeper,那么只要有1个死了zookeeper就不能用了,因为1没有过半, ...

  5. jxls使用模版导出Excel

    /**     * 使用模版导出Excel     */    @SuppressWarnings({ "unchecked", "deprecation" } ...

  6. codeforces 1041 d 二分

    题意转化:有一些区间,要求选一些连续的区间.两两区间间隔的和要求小于H.要求区间的长度和尽可能长. 二分区间长度的和,check一下就行 #include <bits/stdc++.h> ...

  7. 一致性哈希算法-----> 解决memecache 服务器扩容后的数据丢失。

    1 基本场景 比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 ...

  8. Meteor软件包管理

    Meteor 提供数千种开发应用程序,您可以使用社区包. 添加软件包 您可以查看Meteor官方包服务器: 点击这里. 只搜索你需要的包,并在命令提示符窗口中添加它. 例如,想使用 http 包添加到 ...

  9. SQL 连接(JOIN)

    SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来. SQL JOIN SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段. 最常见的 JO ...

  10. HDU 5288(OO’s Sequence-区间互质情况统计)

    OO's Sequence Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...