win32 C/C++程序窗口居中


1、要實現窗口居中顯示並不難,只要在窗體創建的時候我們設置窗口的位置就可以了.在這里我們主要用到3個API函數,分別是:GetSysMetrics,GetWindowRect,SetWindowPos.
我們用GetSysMetrics來獲的屏幕的寬度和高度,然后用GetWindowRect來獲取窗口的坐標.通過運算后計算出居中窗口的位置,最后用 SetWindowPos來設置窗體的位置.整個過程就是如此,而這些部步驟我們都要在窗口創建之前設置好,所以我們要把這些實現方法寫進 WM_CREATE消息中.

2、代碼如下:

	case WM_CREATE:
		{
			int scrWidth,scrHeight;
			RECT rect;
			//獲得屏幕尺寸
			scrWidth = GetSystemMetrics(SM_CXSCREEN);
			scrHeight = GetSystemMetrics(SM_CYSCREEN);
			//取得窗口尺寸
			GetWindowRect(hWnd,&rect);
			//重新設置rect里的值
			rect.left = (scrWidth-rect.right)/2;
			rect.top = (scrHeight-rect.bottom)/2;
			//移動窗口到指定的位置
			SetWindowPos(hWnd,HWND_TOP,rect.left,rect.top,rect.right,rect.bottom,SWP_SHOWWINDOW);
		}
		break;

3、效果圖

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM