NativeWindow_01_CreateWindow(Ex)_VC6
1、
#include <windows.h> LRESULT CALLBACK ProcWindow(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
void QuitWindow(); HINSTANCE g_hInstance = ;
HWND g_hWnd = ; //////////// //////////// //////////// //////////// //////////// //////////// int WINAPI WinMain(
HINSTANCE _hInstance, // 当前 hInstance句柄
HINSTANCE _hPrevInstance, // 之前的 hInstance句柄
LPSTR _lpCmdLine, // 命令行
int _nCmdShow // 显示状态
)
{
g_hInstance = _hInstance; // 程序(.exe)的图标貌似默认是 资源文件中 的第一个图标??
WNDCLASS wndcls = {};
wndcls.style = CS_HREDRAW | CS_VREDRAW;
wndcls.lpfnWndProc = ProcWindow;
wndcls.cbClsExtra = ;
wndcls.cbWndExtra = ;
wndcls.hInstance = _hInstance;
wndcls.hIcon = LoadIcon(NULL, IDI_ERROR); // 窗口图标
wndcls.hCursor = LoadCursor(NULL, IDC_CROSS);
wndcls.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH); // 背景画刷
wndcls.lpszMenuName = NULL;
wndcls.lpszClassName= "zc20110929";
// 注册窗口类
RegisterClass(&wndcls); g_hWnd = CreateWindowEx(
NULL, //WS_EX_CLIENTEDGE,
wndcls.lpszClassName,
"ZC Window",
WS_OVERLAPPEDWINDOW,
, ,
, ,
NULL,
NULL, //g_hMenu,
_hInstance,
NULL); ShowWindow(g_hWnd, SW_SHOWNORMAL);
UpdateWindow(g_hWnd); MSG msg;
while(GetMessage(&msg, , , ))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
} return msg.wParam;
} LRESULT CALLBACK ProcWindow(
HWND _hWnd, // 窗口句柄
UINT _uMsg, // 消息ID(identifier)
WPARAM _wParam,
LPARAM _lParam)
{
switch (_uMsg)
{
case WM_PAINT:
{
HDC hDc;
PAINTSTRUCT ps;
hDc = BeginPaint(_hWnd, &ps);
TextOut(hDc, , , "ASDFG zxcvb", strlen("ASDFG zxcvb"));
EndPaint(_hWnd, &ps);
return ;
// break;
}
case WM_DESTROY:
{
PostQuitMessage();
return ;
}
}
return DefWindowProc(_hWnd, _uMsg, _wParam, _lParam);
} void QuitWindow()
{
DestroyWindow(g_hWnd);
PostQuitMessage();
}
2、
NativeWindow_01_CreateWindow(Ex)_VC6的更多相关文章
- PHP调用SQL Server存储过程
一.安装SQL Server Driver for PHP 在微软官网上发现了这个东西,他提供了一套PHP对MS2005/2008操作的全新函数库,并且支持UTF8,作为PHP的扩展运行.看来 ...
- php的内核组成模块和运行原理
php总共包括3个模块: php内核,zend引擎,php扩展层. 内核: 用于处理请求,文件流,错误处理等相关处理 zend引擎: 将源文件转换成机器语言(实际上是字节码opCode),然后再zen ...
随机推荐
- django自定义错误响应
在做一个web时,总是会出现各种错误,如400.403.404.500等.一般开发都要做对应的处理,给一些友好提示,或返回一些公益广告等. 在Django中,默认提供了常见的错误处理方式,比如: ha ...
- Spring-Data-Redis 下实现jedis连接断开后自动重连
原先使用jedis的时候,处理手段是在从连接池获取连接时捕获JedisConnectionException异常,在异常处理部分重新获取连接,但是spring data redis似乎不会,如下所示: ...
- Ubuntu 部署 nginx
Ubuntu 部署 nginx apt-get install nginx
- 转:网卡、光纤网卡、ISCSI卡有什么区别?
网卡.光纤网卡.ISCSI卡有什么区别? 感谢: http://www.it.com.cn/f/server/063/6/241650.htm 在讨论这个问题的时候,需要先说清楚一个问题:我们知道,在 ...
- php7安装redis拓展
phpredis下载地址https://github.com/phpredis/phpredis 解压并进入源码包 unzip phpredis-develop.zip cd phpredis-d ...
- ldap集成nginx
nginx版本:1.10.2 nginx安装: wget http://nginx.org/download/nginx-1.10.2.tar.gz tar zxvf nginx-1.10.2.tar ...
- TensorFlow模型保存和加载方法
TensorFlow模型保存和加载方法 模型保存 import tensorflow as tf w1 = tf.Variable(tf.constant(2.0, shape=[1]), name= ...
- iOS 允许后台任务吗?
个人整理 1,用户层: 低电量模式 App后台数据刷新 的开关会影响App后台运行 2, 10分钟时间 后台任务: 在AppDelegate中加入以下代码:不受1影响 - (void)applic ...
- topcoder srm 400 div1
problem1 link 枚举指数,然后判断是不是素数即可. problem2 link 令$f[len][a][b][r]$(r=0或者1)表示子串$init[a,a+len-1]$匹配$goal ...
- innerHTML和 innerText的区别
共同点:innerHTML和innerText都会把元素内内容替换掉.不同点:1,innerHTML: 也就是从对象的起始位置到终止位置的全部内容,包括Html标签. 上例中的test.innerHT ...