C++ 怎么获取窗口宽高

作者&投稿:无到 (若有异议请与网页底部的电邮联系)
C++怎么获取当前窗口宽度、高度?~

HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);

BOOL WINAPI GetConsoleScreenBufferInfo(
_In_ HANDLE hConsoleOutput,
_Out_ PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo
);


To determine the current size and position of a screen buffer's window, use the
GetConsoleScreenBufferInfo
function. This function also returns the maximum size of the window,
given the current screen buffer size, the current font size, and the
screen size. The
GetLargestConsoleWindowSize
function returns the maximum window size given the current font and
screen sizes, but it does not consider the size of the console screen
buffer.

RECT rc;
int width;
int height;
GetWindowRect(hwnd, &rc); /* hwnd 为窗口句柄 */

width = rc.right - rc.left; /* 高 */
height = rc.bottom - rc.top; /* 宽 */

用FindWindow得到窗口句柄
再用GetWindowRect得到窗口尺寸

RECT wndRect;
GetClientRect(WND_HANDLE, &wndRect); // WND_HANDLE 为窗口句柄,该函数根据窗口句柄的客户区将坐标参数引用到&wndRect,要获取整个窗口的参数请调GetWindowRect,两个函数如果执行成功都会返回一个!=0的值。
int border = GetSystemMetrics(SM_CYBORDER); // 如果要获取window的非客户区边框参数请用SM_CYBORDER标识符,返回参数与其他winapi参数一样均为整型px单位。
int width = wndRect.right, height = wndRect.bottom;



弥勒县13627539559: C++怎么获取当前窗口宽度、高度? -
宾闸依托: STARTUPINFO sti; GetStartupInfo(&sti); sti.dwXCountChars; // 宽 sti.dwYCountChars; // 高

弥勒县13627539559: c++怎么得到屏幕的宽高 -
宾闸依托: int cx = GetSystemMetrics( SM_CXSCREEN ); int cy = GetSystemMetrics( SM_CYSCREEN );

弥勒县13627539559: vc中怎样得到电脑屏幕的宽和高? -
宾闸依托: Visual C++中获取屏幕宽和高的函数为GetSystemMetrics(int nIndex),其结果为像素值.其中索引值nIndex在获取屏幕宽时为SM—CXSCREEN,在获取屏幕高时为SM—CYSCREEN.举例如下: BOOL CMainFrame::PreCreateWindow(...

弥勒县13627539559: C++ dos窗口大小调试 -
宾闸依托: 当然可以.在运行栏输入CMD 回车 然后点标题栏前面的c:\字样的图标 选择属性-》布局-》窗口大小,根据你的需要填写 我的窗口设置是:宽 120 高 44 这样,保存属性,供以后具有相同标题的窗口使用 下次启动时就是你设置的窗口大小 另外,你在程序里,编译后弹出的dos窗口,按上述方法设置也是一样可行

弥勒县13627539559: VC++如何获取窗口客户区的大小 -
宾闸依托: 因为每当窗口大小发生变化时windows就向窗口发送WM_SIZE消息,传给窗口过程的lParam参数的低位字中包含客户区的宽度;高位字中包含客户区的高度.所以可以在窗口过程中处理WM_SIZE消息:static int cxClient,cyClient; case WM_SIZE:

弥勒县13627539559: VC++获取对话框大小 -
宾闸依托: CRect rect; GetWindowRect(rect); 即可获得本身大小.至于你怎么传递,要看对话框的模式了,如果非模态,都回写到父窗口并访问就行了.

弥勒县13627539559: c++的mfc中 1,用哪个函数获取一个窗口的顶点以及宽度,高度 2,用一个Cbutton类创建一 -
宾闸依托: 1. 用CWnd成员函数: GetWindowRect/GetClientRect, 后者是获取客户区的大小, 前者是整个窗口的大小. 如:CRect rect; GetWindowRect(&rect); CRect成员函数:Width()和Height()返回窗口高度, 宽度.2. 动态建立的控制, 用其父窗...

弥勒县13627539559: vc++编程:在MFC单文档编程中如何获取view类窗口的大小 -
宾闸依托: 在MFC中,View视图类窗口的大小有两个,一个是可视窗口大小,一个是逻辑窗口大小. 在没有滚动条的情况下,两个大小相同,使用GetClientRect就可以获取大小:1 2CRect rt; GetClientRect(&rt); 需要注意的是,CScrollView这个视图类,在有滚动条的情况下,通过上述代码获取的是可视窗口大小,而不是完整窗口尺寸,完整窗口尺寸需要通过GetTotalSize函数获取:1CSize logicSize = GetTotalSize();// logical size

弥勒县13627539559: C或C++怎么知道控制台的宽度和高度? 不是像素单位, 是属性里的那个. 就是能容纳几个字符. -
宾闸依托: 控制台默认大小为80行,25列 控制命令为 mode con cols=列数 lines=行数

弥勒县13627539559: dev c++里怎么设置控制台窗口的大小 -
宾闸依托: 1、在Window下可以使用 system("mode con cols=30 lines=20") 命令设置窗体大校 如果需要动态设置大小,可以写成如下形式: char stCmd[128]; sprintf("mode con cols=%d lines=%d", height, width); system(stCmd); 2、system函数: 原型

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网