3.win32窗口类

1.窗口类

  窗口类包含了窗口的各种参数信息的数据结构。每个窗口都具有窗口类,基于窗口类创建窗口。每个窗口类都具有一个名称,使用之前必须注册到系统。

2.窗口类的分类

  1)系统窗口类

    系统已经定义好的窗口类,所有应用程序都可以直接使用。

  2)应用程序全局窗口类

    由用户自己定义,当前应用程序所有模块都可以使用。

  3)应用程序局部窗口类

    由用户自己定义,当前应用程序中本模块可以使用。

3. 系统窗口类

  注册窗口类的步骤必须要做,但是系统窗口类不需要(程序员)注册,直接使用窗口类即可。系统已经定义好的相应名称,例如:

    按钮  -  BUTTON

    编辑框 - EDIT

#include "stdafx.h"

HINSTANCE g_hInstance = 0;

void SysReg()
{
    HWND hWnd = CreateWindow(
        (LPCSTR)"BUTTON",
        (LPCSTR)"OK",
        WS_OVERLAPPEDWINDOW,
        100, 100, 500, 500,
        NULL, NULL, g_hInstance, NULL);

    ShowWindow(hWnd,SW_SHOW);
    UpdateWindow(hWnd);

    MSG uMsg = { 0 };
    while (GetMessage(&uMsg, NULL, 0, 0))
    {
        TranslateMessage(&uMsg);
        DispatchMessage(&uMsg);
    }
}

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       cCmdShow)
{
    g_hInstance = hInstance;
    SysReg();
    return 0;
}
时间: 2024-10-15 12:53:32

3.win32窗口类的相关文章

4.win32注册窗口类和创建窗口

1.注册窗口类函数 (1)RegisterClass/RegisterClassEx ATOM RegisterClass(CONST WNDCLASS *lpWndClass); ATOM RegisterClassEx(CONST WNDCLASSEX *lpwcx); 注册成功后,返回一个非0数字标识,失败返回0. (2)窗口类的风格 CS_GLOBALCLASS - 应用程序全局窗口类 CS_BYTEALIGNCLIENT - 窗口客户区的水平位置8整倍数据对齐 CS_BYTEALIGN

win32窗口程序的过程

复习一下win32窗口程序 设计一个窗口类: 注册窗口类: 创建窗口: 显示及更新窗口. 消息循环,去获取消息: 窗口过程函数的消息响应. 设计窗口类: typedef struct _WNDCLASS { UINT style; //窗口类的类型 WNDPROC lpfnWndProc; //窗口过程函数(回调函数) int cbClsExtra; //为该类设定额外内存空间 int cbWndExtra; //为该窗口设定额外内存空间 HANDLE hInstance; //当前应用程序的实

Window 窗口类

窗口类 WNDCLASS 总结 总结为下面的几个问题: 1. 什么是窗口类 2. 窗口类的三种类型 3. 窗口类各字段含义 4. 窗口类的注册和注销 5. 如何使用窗口类,子类化.超类化是什么 下面分别描述: 1. 什么是窗口类? 窗口类定义了一系列属性,系统使用这些属性作为模板来创建出一个或多个 window (窗口). 每个窗口类都关联了一个窗口过程函数(window procedure), 由窗口类创建出的所有窗口(window), 都共享同一个窗口过程函数. 在进程中创建窗口之前必须先注

窗口类(Window Class)概述

windows窗口编程(通常意义上的win32)有几个比较核心的概念:入口函数WinMain.窗口类Window Class.窗口过程.消息处理机制.通用控件.本文主要介绍窗口类的相关概念,包括: 窗口类的类型: 窗口类的注册及使用: 窗口类的构成. 窗口类是基于进程的,每个应用程序在创建窗口之前必须注册窗口类(或者使用操作系统定义的窗口类),使用完成之后需要销毁(反注册). 介绍窗口类的主要目的在于明确windows窗口编程的相关概念,掌握windows内部对于GUI处理的机制.如果你在用mf

VC++编程之第三课笔记——MFC窗口创建过程以及窗口类的封装

第三课 MFC窗口创建过程以及窗口类的封装 MFC的每一个类都是以C开头的,表明这是一个Class. 工程包含(单文档) 创建工程名为aaa的工程(单文档)时,在类视图中可看见五个类: CAboutDlg CMainFrame CAaaApp CAaaDoc CAaaView 其中: 类CAboutDlg继承自CDialog类,对话框的类 类CMainFrame继承自CFrameWnd类,创建整个程序的框架窗口 类CAaaApp继承自CWinApp类,创建唯一的应用程序对象 类CAaaDoc继承

解决WIN32窗口不响应WM_LBUTTONDBLCLK消息

原文链接: http://www.cnblogs.com/xukaixiang/archive/2012/05/27/2520059.html 今天在做一个软件时,发现win32创建的窗体不能响应WM_LBUTTONDBLCLK消息.在一番谷歌百度之后,终于找到了解决方法:废话少说,言归正传. 窗体不响应WM_LBUTTONDBLCLK消息,只要在注册窗口类的时候在WNDCLASS的style成员加上CS_DBLCLKS风格就行了. 下面是几种CS风格: CS_HREDRAW:当窗体的宽度发生变

注册窗口类

一.MFC应用程序与win32应用程序的区别 Win32编程:是调用Win32SDK中的API函数进行编程,注册窗口类,建立窗口,现实窗口,设置消息循环……等等的方式建立Windows程序,以前的Windows程序都这样开发的,写程序要写大量代码. MFC库:后来微软为了方便编程人员开发,将Win32SDK中的函数进行C/C++封装,于是就是MFC库(架构),开发程序比以往的Win32SDK方式更加简便快捷. 相同:调用的API都是Win32SDK的API 不同:MFC的程序执行起来慢,而且用M

WIN32窗口模板

1 // WINATLTest.cpp : 定义应用程序的入口点. 2 // 3 4 #include "stdafx.h" 5 #include "WINATLTest.h" 6 7 #define MAX_LOADSTRING 100 8 9 // 全局变量: 10 HINSTANCE hInst; // 当前实例 11 TCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本 12 TCHAR szWindowClass[MAX_LOAD

关于WNDCLASSEX窗口类

WNDCLASSEX窗口类原型如下 1 typedef struct WNDCLASSEX { 2 UINT cbSize; 3 UINT style; 4 WNDPROC lpfnWndProc; 5 int cbClsExtra; 6 int cbWndExtra; 7 HINSTANCE hInstance; 8 HICON hIcon; 9 HCURSOR hCursor; 10 HBRUSH hbrBackground; 11 LPCTSTR lpszMenuName; 12 LPCT