·天新网首页·加入收藏·设为首页
首页|笔记本|手机|数码相机|摄像机|MP3/MP4|主板|内存|显示器|办公|打印机|下载|开发|汽车|学院|业界
硬件|台式机|数码|数字家庭|投影仪|GPS/CPU|显卡|硬盘|服务器|网络|一体机|驱动|源码|游戏|考试|报价
Windows SDK编程之建立控件
http://dev.21tx.com 2004年08月30日 vckbase 冯明德

1 2 下一页

  一、概述

  控件是子窗口,它们是系统已经定义好的窗口类,因此不需要注册、也不需要写消息处理函数。

  在主窗口得到WM_CREATE消息时,建立子窗口即可。


  二、实例

//参数:窗口句柄,消息,消息参数,消息参数
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
 //处理感兴趣的消息
 switch (message)
 {
  case WM_CREATE:
   CreateWindow(TEXT("BUTTON"), //控件"类名称"
   TEXT("按钮(&A)"),
   WS_CHILD | WS_VISIBLE |BS_PUSHBUTTON, 10, 10, 100, 100, hwnd, (HMENU)1000, //控件ID
((LPCREATESTRUCT) lParam)->hInstance, //实例句柄
NULL);

   return 0;
  case WM_DESTROY:
   //当用户关闭窗口,窗口销毁,程序需结束,发退出消息,以退出消息循环
   PostQuitMessage (0) ;
   return 0 ;
 }
 //其他消息交给由系统提供的缺省处理函数
 return ::DefWindowProc (hwnd, message, wParam, lParam) ;
}

  三、关于WM_CREATE消息

  WM_CREATE 的lParam参数将会传入一个建立时信息结构指针(LPCREATESTRUCT)。结构中包含了一些有用信息(窗口建立时的参数)。

typedef struct tagCREATESTRUCT {
 LPVOID lpCreateParams;
 HINSTANCE hInstance; //实例句柄
 HMENU hMenu;
 HWND hwndParent;
 int cy;
 int cx;
 int y;
 int x;
 LONG style;
 LPCTSTR lpszName;
 LPCTSTR lpszClass;
 DWORD dwExStyle;
} CREATESTRUCT, *LPCREATESTRUCT;

上一篇: Windows程序的基本结构
下一篇: 虚拟设备驱动程序的实现

1 2 下一页

Google
 
热点文章
关于我们 | 联系我们 | 广告服务 | 工作机会 | 版权声明 | 欢迎投稿 | 网站地图
Copyright © 2000-2008 , www.21tx.com , All Rights Reserved .
© 晨新科技 版权所有 Created by TXSite.net