首页 > 编程语言 > 详细

C语言代码片段

时间:2019-11-15 23:22:14      阅读:120      评论:0      收藏:0      [点我收藏+]

? ? ?

//窗口居中

POINT Center(int width,int height)

{

????POINT pt;

????int screen_width;

????int screen_height;

????screen_width = GetSystemMetrics(SM_CXSCREEN);

????screen_height = GetSystemMetrics(SM_CYSCREEN);

????pt.x = (screen_width-width)/2;

????pt.y = (screen_height-height)/2;

????return pt;

}

? ?

//主窗口样式

WS_OVERLAPPEDWINDOW

默认样式,包含以下所有样式

WS_OVERLAPPED

??

WS_CAPTION

是否包含标题栏

WS_SYSMENU

是否包含系统菜单

WS_THICKFRAME

窗口是否可以改变大小

WS_MINIMIZEBOX

是否有最小化按钮

WS_MAXIMIZEBOX

是否有最大化按钮

? ?

//vs资源编辑器中编辑对话框时右下方显示的窗口尺寸,与窗口实际大小之间的转换关系

//字体为8号

//长 1 DLU = 1.50

//宽 1 DLU = 1.62

DLU指的是 对话框的逻辑单位,相对应的就是实际显示的单位

?

//如何精确的设置窗口的客户区大小

//使用AdjustWindowRect

HWND hWnd;

POINT win_pos;

RECT rt;

?

hInst = hInstance; // 将实例句柄存储在全局变量中

SetRect(&rt,0,0,WIN_WIDTH,WIN_HEIGHT);

AdjustWindowRect(&rt,

????????WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX,

????????TRUE);

win_pos = Center(rt.right-rt.left,rt.bottom-rt.top);

?

hWnd = CreateWindow(szWindowClass, szTitle,

???? WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX,

???? win_pos.x, win_pos.y, rt.right-rt.left, rt.bottom-rt.top,

???? NULL,

???? NULL,

???? hInstance,

???? NULL);

?

C语言代码片段

原文:https://www.cnblogs.com/jawide/p/11869995.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!