• 关于windows程序的学习及思考系列之一


    1.窗口类的注册

      a.windows程序中最简单的就是创建一个简单的窗口,而窗口程序的创建是基于窗口类的,窗口类决定了处理窗口消息的过程函数。

      b.一个窗口类可以用于创建多个窗口,也就是说窗口是窗口类的实例对象。

      c.所有的按钮窗口——包括下按按钮,复选框,单选框——都是基于窗口类来创建的。窗口类为这些窗口定义了窗口过程和一些其他的特性。

      d.当定义一个窗口的时候,我们还需要定义一些该窗口的特有的附加属性。

      

      创建窗口(也就是创建一个类的实例),首先得先注册一个类,Windows中有RegisterClass来注册窗口类,这个函数只需要一个指向WNDCLASS(窗口类)的结构体指针做参数。该结构中包含两个指向字符串的指针。(注意:因为这个WNDCLASS的字段中有两个字符串指针,所以在不同的编码方式的时候有不同的定义,分别是宽字节Unicode,窄字节Ascill,在头文件WINUSER.H中有两种不同的定义方式,分别是WNDCLASSA和WNDCLASSW,在定义了这两种方式之后根据不同的编码方式将WNDCLASSA和WNDCLASSW定义成WNDCLASS)。

      在程序中先定义WNDCALSS wndclass,然后读wndclass的各个字段初始化,最后调用RegisterClass()注册之。

      在WNDCLASS的所有字段中组重要的是第二个字段和最后一个字段,第二个字段(lpfnWndProc)是基于该窗口类的所有窗口的窗口过程函数的地址。最后一个字段是这个窗口类的名字,还有就是风格字段可以用按位或(|)操作结合两个风格的标识符。

  • 相关阅读:
    gitlab搭建
    java数组
    安裝nextcloud
    Spring的定时任务@Scheduled(cron = "0 0 1 * * *")
    java内存结构(下)
    java内存结构(上)
    多线程的三个特性
    @RequestBody用法
    SwaggerAPI注解详解(转载)
    在jpanel中添加jbutton并自由设置按钮大小和位置
  • 原文地址:https://www.cnblogs.com/hackerl/p/3930574.html
Copyright © 2020-2023  润新知