windows如何全屏窗口,如何将全屏程序窗口化
发件人:http://博客。。net/le olee 82/article/details/69992615
窗子操作系统编程全屏窗口的创建总结
第一种:较简单的方法
在ShowWindow(hwnd,SW _ show normal);
更新窗口(hwnd):前加如下代码:
[cpp]视图plaincopyprint?
LONGstyle=GetWindowLong(hwnd,GWL_STYLE)://获得窗口风格样式~ ws _ caption ~ ws _ sizebox//窗口全屏显示且不可改变大小SetWindowLong(hwnd,GWL风格,样式)://设置窗口风格int screen x=getsystemmetrics(sm _ CX screen)://获取整个屏幕右下角x个坐标intscreen y=获取系统指标(sm _ cyscreen)://屏幕然后呢坐标SetWindowPos(hwnd,NULL,0,0,screenX,screenY,swp _ nozorder//改变窗口位置~我爱你~尺寸和z轴序ShowCursor(FALSE)://显示时隐藏鼠标长型式=getwindowlong(hwl,GWL_STYLE)://获得窗口风格
样式=~ ws _ caption ~ ws _ sizebox//窗口全屏显示且不可改变大小
SetWindowLong(hwnd,GWL风格,样式)://设置窗口风格
int screen x=getsystemmetrics(sm _ CX screen)://获取整个屏幕右下角x个坐标
int screen=获取系统指标(sm _ cyscreen)://屏幕然后呢坐标
SetWindowPos(hwnd,NULL,0,0,screenX,screenY,swp _ nozorder//改变窗口位置~我爱你~尺寸和z轴序
ShowCursor(FALSE)://显示时隐藏鼠标
第二种:在按下转义字符键后实现全屏
[cpp]视图plaincopyprint?
开关(消息){caseWM_KEYDOWN:开关(wparam){ case vk _ escape:{ hwndhdesk;直布罗陀;hdesk=getdesktopwindow();GetWindowRect(hDesk,RC);SetWindowLong(hWnd、GWL_STYLE、ws _ border);SetWindowPos(hWnd,HWND_TOPMOST,0,0,rc.right,rc.bottom,SWP _ show window);} break}返回0;}开关消息
WM_KEYDOWN案例:
交换机(wParam)
vk _ escape案例:
hwnd hdesk
罗马天主教矩形;
hdesk=getdesktopwindow();
GetWindowRect( hDesk,RC);
SetWindowLong( hWnd、GWL_STYLE、ws _ border);
SetWindowPos( hWnd,HWND_TOPMOST,0,0,rc.right,rc.bottom),
SWP _橱窗(显示窗口):
打断;打断;
返回0;
第三种:在消息中加入一下代码
[cpp]视图plaincopyprint?
staticintcx、cy、cxDib、cydibhdc=:getdc(null);switch(message){ case WM _ create:CX=getdeviecaps(hdc,horz)getsystemmetrics(sm _ cxx border);cy=getdeviecaps(hdc,代理)getsystemmetrics(sm _ cyborder);* relase DC(0 . hdc);//去除标题和边框SetWindowLong(hWnd、GWL_STYLE、GetWindowLong(hWnd、gwl _ STYLE)(~(ws _ caption ws _ border));//置对话框为最顶端并扩充到整个屏幕* setwindowpos(hwnd,hwnd _ top most-)(getsystemmetrics(sm _ CX border)1)、-(getsystemmetrics(sm _ cyborder)1)、1、cy 1、SWP _诺佐尔;}静态int cx,cy,cxdib,cydib
hdc=:getdc(null);
交换机(消息)
WM_CREATE案例:
CX=getdeviecaps(hdc,horz)
getsystemmetrics(sm _ cxxborder):
cy=getdeviecaps(hdc代理)
GetSystemMetrics(SM_CYBORDER):
* relase DC(0 . hdc);
//去除标题和边框
SetWindowLong(hWnd、GWL_STYLE、
GetWindowLong(hWnd,GWL风格)
(~(ws _ caption ws _ border));
//置对话框为最顶端并扩充到整个屏幕
* setwindowpos(hwnd,HWND_TOPMOST),
-(getsystemmetrics)(sm _ cxbw order)1),
-(获取系统指标)(sm _ cyborder)1)参数,
S7-1200可编程控制器:
以上几种方法需要注意的是在注册窗口类中的菜单项,如果不显示菜单就要把lpszMenuName设为空值,否则会在全屏的窗口上显示菜单。