visual c++ 部分窗口样式设置

窗口样式需要在两个地方指定,一个是CreateWindow 函数的 dwStyle 参数,另一个是窗口类 WNDCLASS 的 style 字段。
dwStyle 参数的取值都是以WS开头的,WS 是Window Style的缩写,意思是窗口风格。
在这里插入图片描述
在这里插入图片描述

先来看看CreateWindow函数原型
HWND CreateWindow(
LPCTSTR lpClassName,
LPCTSTR lpWindowName,
DWORD dwStyle,//这边用来设置窗口风格
int x,
int y,
int nWidth,
int nHeight,
HWND hWndParent,
HMENU hMenu,
HANDLE hlnstance,
LPVOID lpParam);

在这里插入图片描述

带系统菜单

hwnd=CreateWindow(lpszClassName,lpszTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

先找到第三个参数,由于代码是一般设置,需求改变则须改变相应的代码
WS_OVERLAPPEDWINDOW我们去找到上图对应的窗口风格,发现有许多,而WS_OVERLAPPEDWINDOW,已经包含了系统菜单,如果不想要别的,只要系统菜单,就须对应改变:

hwnd=CreateWindow(lpszClassName,lpszTitle,WS_SYSMENU,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

如上修改后就只有系统菜单了,如果还要别的可自行添加,用 | 隔开即可

带水平滚动条

hwnd=CreateWindow(lpszClassName,lpszTitle,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

可以通过第三个参数WS_OVERLAPPEDWINDOW增加滚动条
水平和垂直滚动条形式如下:

WS_HSCROLL    //水平滚动条的标识符
WS_VSCROLL    //垂直滚动条的标识符     

如何应用呢?通过运算符 | 可以进行滚动条添加。例子如下:

WS_OVERLAPPEDWINDOW | WS_VSCROLL | WS_HSCROLL

当然如果只需要一个那么放一种滚动条即可

带标题栏

如上操作

发布了127 篇原创文章 · 获赞 113 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/z2431435/article/details/104653131
今日推荐