窗口与winmain-win32与C++入门笔记(2)
来源:互联网 发布:java源代码文件调试 编辑:程序博客网 时间:2024/05/19 15:24
Learn to Program for Windows in C++
windows
窗口
我们所看见的窗口 是application windows,有标题栏,标题栏上有最大最小化按钮,还有一些其他的组件。这些区域称为 non-client area
而中间的那部分称为client area
还有单个组件的窗口比如就一个按钮。
窗口特征
对于一般的window我们应该将其视为一种编程结构
有如下特征
- 在显示器上占有一定空间
- 在某一时刻可能没有显示
- 画出自己的能力
- 能对来自系统或用户的时间做出响应
窗口关系
窗口之间有两种关系
- parent/child
- owner/owned
第一种关系,比如窗口上有一个button,他们的关系就是这样的。
parent为child 提供位置坐标系,child显示不能超出parent组件范围。
第二种关系,就是窗口与他的模态对话框关系。
Window Handles
windows不是C++类,系统想要标识索引它,就需要handles这种结构。
可以把他想象成,所有windows都放在一个表中,而他就是这个表的索引。
windows句柄结构类型是 HWND
CreateWindowEx.
返回的就是HWND。
执行一些需要操作窗口的函数往往都需要这个参数。
winmain
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow);
入口函数,就像main函数一样,这是windows桌面应用程序的入口函数。
第一个参数可以理解为“handle to an instance”,handle是用来标识的意思,他是用于操作系统标志识别这个执行程序。
第二个参数是16位应用程序使用的,现在不用为0
第三个是控制台参数的unicode表示。
第四个是标志位,主要控制窗口属性如是否可以最大最小化。
这个函数有一个整形的返回值,这个一般不像控制台应用那样传给操作系统程序执行完成状态,而是传递给其他应用程序的状态码。
WINAPI主要是对函数调用的一些约定,比如参数从左还是从右入栈。
入口函数为什么是winmain,这个是由Microsoft C runtime library (CRT)决定的,事先做了一些事情。
- 窗口与winmain-win32与C++入门笔记(2)
- [C++]入门笔记1:WinMain
- WinMain与Main
- WinMain()与CWinApp
- C win32学习1—WinMain
- Win32学习笔记 - 01 - WinMain(), MessageBox()
- 【学习笔记1】Win32 API---WinMain
- 基本类型与字符-win32与C++入门(1)
- C# win32 api入门--自制窗口闪烁效果与模态窗体闪烁效果
- Win32 API与MFC创建窗口对比
- Win32窗口的生与死
- main与WinMain的区别
- _tmain与main,winMain,wmain
- WinMain win32 Application
- Win32编程之WinMain
- WIN32入门---创建一个窗口
- WinMain中的Console与main中的Window
- _tmain与main,winMain,wmain收藏
- sql-约束constraint(非空,唯一,主键,外键,检查)自学笔记
- 版本控制工具--Git
- 基本数据类型
- Android基础之startActivityForResult详解
- 总结-树链剖分
- 窗口与winmain-win32与C++入门笔记(2)
- java集合类详解
- canvas中save和restore
- duilib bkimage属性说明
- Android支持多国语言
- 一个简单实用的程序员鸡汤
- android ScrollView嵌套ListView adapter的notifyDataSetChanged无效
- GDAL——生成等值线
- 【ADF启动start server instance失败】