低级Windows API C++语言版编程(3)
当前位置:以往代写 > C/C++ 教程 >低级Windows API C++语言版编程(3)
2019-06-13

低级Windows API C++语言版编程(3)

低级Windows API C++语言版编程(3)

由于上一章的文章中我没有向各人先容清楚初试化的详细实现,造成许多的读者无法很好的领略,这是我的失误。本人此刻补上,请各人原谅。

一个Windows API措施的初始化主要分为为四个部门。1、窗口类的界说2、窗口类的注册3、建设窗话柄例4、显示窗口

①窗口类界说

在Windows应用措施中,窗口类界说了窗口的形式与成果。它的界说进程通过给窗口类数据布局WNDCLASS赋值来完成,这个数据布局包括窗口类的各个属性。窗口类的界说常用到以下几个函数,在这里一一先容。

1、LoadIcon函数

LoadIcon函数的浸染是在应用措施中加载一个窗口图标。它的原型为:

HICON LoadIcon
(
   HINSTANCE hInstance, //图标资源地址的模块句柄;
               //假如利用NULL,就会利用系统预界说的图标
   LPCTSTR lpIconName //图标资源名或系统预界说的图标标识名
)
2、LoadCursor函数
LoadCursor函数浸染是在应用措施中加载一个窗口光标。它的原型为:
HCURSOR LoadCursor
(
   HINSTANCE hInstance,//光标资源地址的模块句柄;
              //假如利用NULL,它就会利用系统预界说的光标
   LPCTSTR lpCursorName//图标资源名或系统预界说的光标标识名
)

3、GetStockObject函数

应用措施通过挪用GetStockObject函数来获取系统提供的配景刷,它的原型为:

HBRUSH GetStockObject(int nBrush);

//nBrush 为系统提供的配景刷标示名

②注册窗口类

Windows系统自己提供部门预界说的窗口类,我们也可以本身界说窗口类,窗口类必需先注册后利用。窗口类注册利用的函数是RegisterClass()实现。它的原型为:

RegisterClass(&wndclass);

//wndclass为窗口的类布局(前面第二篇文章已经先容过了)

③建设窗口

窗口注册之后就要把它实例化,简朴的说就是建设一个窗口的实例。它是由函数CreateWindow()实现,函数的原型为:

HWND CreateWindow
(
   LPCTSTR lpszClassName,//窗话柄例的类的名字
   LPCTSTR lpszTitle,    //窗口标题名
   DWORD dwStyle,    //新建设的窗口的样式(后头将会具体先容)
   int x,          //窗口左上角的横坐标
   int y,          //窗口左上角的纵坐标
   int nWidth,        //窗口的宽度
   int nHeight,       //窗口的高度
   HWND hwndParent,   //该窗口的父窗口的句柄
   HMENU hMenu,     //窗口主菜单句柄
   HINSTANCE hInstance, //建设窗口的应用措施当前句柄
   LPVOID lpParam     //指向一个通报给窗口的参数值的指针
)

那么窗口的样式有哪些呢?

标识 说明

WS_BORDER 建设一般带边框的窗口

WS_CAPTION 建设一个带标题栏的窗口

WS_HSCROLL 建设一个带程度转动条的窗口

WS_MAXIMIZEBOX 建设一个带最大化按钮的窗口

WS_MINIMIZEBOX 建设一个带最小化按钮的窗口

WS_OVERLAPPED 建设一个带边框和标题栏的窗口

WS_OVERLAPPEDWINDOW 建设一个带边框、标题栏、系统菜单及最大化、最小化按钮的窗口

WS_POPUP 建设一弹出式窗口

WS_POPUPWINDOW 建设一带边框和系统菜单的弹出式窗口

WS_SYSMENU 建设一带系统菜单的窗口

WS_VSCROLL 建设一带垂直转动条的窗口

虽然为了实现具有多种气势气魄的窗口,WINAPI提供了“|”来暗示并(∪)的意思。譬喻我们要实现一个即具有垂直转动条又具有程度转动条的弹出式窗口时可以输入:WS_BSCOLL|WS_VSCROLL|WM_POPUP

④显示窗口

以上的操纵均由函数实现,显示窗口虽然也不破例。窗口类的显示由ShowWindow和UpdateWindow函数实现。应用措施挪用ShowWindow函数在屏幕上显示窗口,其形式为:

BOOL ShowWindow(hwnd,nCmdShow)

//个中hwnd为窗口句柄,nCmdShow为窗口显示形式标识

nCmdShow共有六个可选值

标识 说明

SW_HIDE 埋没窗口

SW_SHOWNORMAL 显示并激活窗口

SW_SHOWMINIMIZE 显示并最小化窗口

SW_SHOWMAXIMIZE 显示并最大化窗口

SW_SHOWNOACTIVE 显示但不激活窗口

SW_RESTORE 规复窗口本来的位置及尺寸

在窗口显示之后,应用措施应利用UpdateWindow函数更新并绘制用户区,并发出WM_PAINT动静。它的形式为:

BOOL UpdataWindow(hwnd);

//hwnd为窗口句柄

    关键字:

在线提交作业