windows程序设计(四)视窗详解:创建视窗与显示视窗

创建视窗

在上一步注册视窗时,我们注册的是视窗类别,视窗类别定义了视窗的一般特性,因此可以使用同一视窗类别来建立许多不同的视窗。创建视窗的过程可以看作是对视窗类别的进一步细化,我们使用CreateWindow或者CreateWindowEx函数来进行视窗的创建。
CreateWindow函数的作用为创建一个重叠窗口,弹出窗口或子窗口。它指定窗口类,窗口标题,窗口样式,以及(可选)窗口的初始位置和大小。该函数还指定窗口的父级或所有者(如果有)以及窗口的菜单。

void CreateWindowA(
   lpClassName,
   lpWindowName,
   dwStyle,
   x,
   y,
   nWidth,
   nHeight,
   hWndParent,
   hMenu,
   hInstance,
   lpParam
);

CreateWindowEx函数有创建扩展重叠窗口,弹出窗口或子窗口的作用,其参数的传入如下所示:

HWND CreateWindowExA(
  DWORD     dwExStyle,//扩展样式
  LPCSTR    lpClassName,//窗口类名
  LPCSTR    lpWindowName,//窗口名称
  DWORD     dwStyle,//窗口风格
  int       X,//初始X坐标
  int       Y,//初始Y坐标
  int       nWidth,//宽度
  int       nHeight,//高度
  HWND      hWndParent,//父窗口句柄
  HMENU     hMenu,//菜单句柄
  HINSTANCE hInstance,//程序实例句柄
  LPVOID    lpParam//用户数据
);

dwExStyle为该窗口的拓展样式
lpClassName为该窗口的类名即相对应的视窗类别
lpWindowName为窗口的名称,会在窗口的上方显示
dwStyle为窗口风格
X,Y为窗口的坐标,以屏幕的左上角为原点,原点向右为X轴的正方向,原点向下为Y轴的正方向
nWidth,nHeight为窗口的宽度和高度
hWndParent为父窗口句柄
hInstance为该程序的实例句柄,在WinMain函数的参数中有定义

显示视窗

显示视窗需要ShowWindow函数和UpdateWindow函数才能进行显示

	::ShowWindow(hwnd, nCmdShow);
	::UpdateWindow(hwnd);

对于ShowWindow函数而言,第一个参数为CreateWindow建立的视窗句柄,第二个参数是WinMain函数的nCmdShow,用来存储视窗初始化大小的一些讯息。
对于UpdateWindow函数会重画显示区域,传入的唯一一个参数就是所要显示的视窗句柄。它经由发送给视窗讯息处理函数(即 WndProc 函数)中的 WM_PAINT 讯息做到这一点。

参考资料:
[1]《Windows程序设计(第五版)》
[2]https://docs.microsoft.com/zh-cn/welcome-to-docs

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值