惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
About on SuperTechFans
Y
Y Combinator Blog
V
V2EX
Engineering at Meta
Engineering at Meta
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Visual Studio Blog
博客园 - 叶小钗
博客园 - 聂微东
阮一峰的网络日志
阮一峰的网络日志
H
Help Net Security
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The GitHub Blog
The GitHub Blog
WordPress大学
WordPress大学
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MongoDB | Blog
MongoDB | Blog
B
Blog
G
Google Developers Blog
J
Java Code Geeks
博客园 - 三生石上(FineUI控件)
IT之家
IT之家
N
Netflix TechBlog - Medium
腾讯CDC

博客园 - jasonM

真是郁闷,团队中居然出了这样的骗子!! C++反汇编揭秘1 – 一个简单C++程序反汇编解析 函数调用堆栈变化分析 - jasonM - 博客园 为什么要下断bpSend,原理分析。 做挂第一步:如何找基址(以热血传奇为例) 一步步学外挂(二).CALL的原理。 - jasonM - 博客园 开发企业直销软件需求分析 开发旺旺群发软件,难点及重要技术点分析(一) 正则表达式系列文章整理 群发软件开发原理分析 通俗解释socket(并附上注释Socket源代码) CMainFrame::PreCreateWindow这个函数执行了两次 .net调用vc++写的dll 一步步学破解-sdk用实例讲解GDI映射机制 一步步学破解-sdk用实例讲解GDI(含各个消息的调用时机) 一步步学破解-sdk进程间传递信息 一步步学破解-windows消息循环原理实例总结(二) 一步步学破解-函数调用堆栈变化分析 (一) 老王最新壳试脱时遇到的问题,详细表述如下
一步步学破解-在已有的主窗口上创建按钮(三)
jasonM · 2009-04-24 · via 博客园 - jasonM
 

因为按钮是子窗口,是系统已定义好的,所以不需要使用注册窗口类注册,也不需要写消息处理,直接在窗口的WM_CREATE中创建就可以了,在上一讲的窗口过程中加入如下代码:

case WM_CREATE:

{

         CreateWindow(TEXT("BUTTON"),TEXT("按钮(&A)"),WS_CHILD | WS_VISIBLE |BS_PUSHBUTTON,10,10,65,22,hWnd,(HMENU)1000,hInst,NULL);

                    return 0;

}

这样就实现了在sdk中加入控件的功能,非常简单吧!!

同样的道理,如果我们想增加一个文本框控件,仅需要加入:

///下面一个是编辑框按钮,你可以在其中输入文字,具有一个简单的写字板的

       ///功能,可以复制、粘贴、剪切等操作

       ///////////////////////////////////////////////////////////////////

       CreateWindow(

       "edit",    //在这里设置此按钮为edit类型,表示将控件设定为编辑框控件

       "试试",      //字符型数组在前面已经定义,在这里显示它的内容

      WS_CHILD | WS_VISIBLE,

       10,

       160,

       568,

       130,

       hWnd,

       (HMENU)1001,

       hInst,

       NULL);

备注:设定按钮的类型为button,其它类型有静态控件static,
            
滚动条控件scrollbar,编辑框控件edit,列表框控件listbox