1. 程式人生 > >如何通過視窗控制代碼來獲得一個程式視窗的大小

如何通過視窗控制代碼來獲得一個程式視窗的大小

首先通過FindWindow函式取得視窗控制代碼,當然也可以用GetForegroundWindow()函式取得自己的程式的控制代碼。


RECT rctA; //定義一個RECT結構體,儲存視窗的長寬高
HWND lhwnd=::FindWindow(NULL,L"微信");  //獲得控制代碼,這裡以電腦微信為例
::GetWindowRect(lhwnd,&rctA);//通過視窗控制代碼獲得視窗的大小儲存在rctA結構中


int width = rctA.right - rctA.left;   //視窗的寬度
int height = rctA.bottom - rctA.top;  //視窗的高度


::MoveWindow(lhwnd,hh01①,hh02②,width,height,FALSE);  //然後就可以根據視窗原來的大小原樣挪動視窗

①:移動到的新視窗X座標

②:移動到的新視窗Y座標

相關推薦

如何通過視窗控制獲得一個程式視窗大小

首先通過FindWindow函式取得視窗控制代碼,當然也可以用GetForegroundWindow()函式取得自己的程式的控制代碼。RECT rctA; //定義一個RECT結構體,儲存視窗的長寬高HWND lhwnd=::FindWindow(NULL,L"微信");  

獲得MessageBox的視窗控制和其所屬的視窗

  .386  .model flat,stdcall  option casemap:none include  windows.incinclude  kernel32.incinclude  user32.incincludelib kernel32.libinclud

程序控制HANDLE獲得程序主視窗控制HWND

一個程序可以擁有很多主視窗,也可以不擁有主視窗,所以這樣的函式是不存在的,所幸的是,相反的函式是有的。所以我們可以呼叫EnumWindows來判斷所有的視窗是否屬於這個程序。  typedef struct tagWNDINFO  ​{  ​DWORD dwProc

根據視窗控制獲取程序ID

[DllImport("User32.dll", CharSet = CharSet.Auto)] public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID

MFC通過對話方塊視窗控制獲得對話方塊物件指標

MFC在很多的對話方塊操作中,我們經常要用到在一個對話方塊中呼叫另一個對話方塊的函式或變數.可以用如下方法來解決. HWND hWnd=::FindWindow(NULL,_T("視窗名"));      //得到對話方塊的控制代碼C***Dialog* pWnd= (C*

獲取ArcMap視窗控制通過WinAPI獲取工作空間中點選要素的系統桌面座標

這裡用了個“桌面座標”,是希望區分一下ArcGis的“螢幕座標”(與之對應的還有一個“地理座標”)。 什麼是“螢幕座標”呢?使用ITool介面的OnMouseDown方法獲取的“x,y”值即是,其原點值在“工作空間”窗體左上角。 什麼是我所稱謂的“工作空間”呢?它是資料編輯區域,用Spy++檢視一下其窗體

C#獲得windows工作列視窗控制及一些操作(放大、縮小、關閉、隱藏……)

需呼叫API函式 需在開頭引入名稱空間using System.Runtime.InteropServices; 1、通過視窗名字查詢 [DllImport("user32.dll", EntryPoint = "FindWindow")] public static extern In

如何獲得視窗控制(FindWindow函式的使用)

一: 獲得主視窗 HWND WINAPI FindWindow( _In_opt_  LPCTSTR lpClassName, _In_opt_  LPCTSTR lpWindowName ); 該函式通過建立視窗時的類名和視窗名查詢視窗並返回該視窗的控制代碼,

MFC中使用GetParent獲得視窗的父視窗控制

今天真是暈了,為了解決控制端開啟程序管理器頁面只能開啟一個介面且關閉後還可以開啟這個問題,在設計的主視窗類CBOFDlg,子視窗類CProcessManagerPageDlg,以及會話類CSession三個類之間周旋了好久,在這個類放一個變數來標記,另一個類中判斷,最後還是

python selenium 獲得當前視窗控制/獲得當前視窗

1. 獲得當前視窗控制代碼:    driver.current_window_handles2. 獲得當前所有一開啟的視窗控制代碼:   driver.window_handles3.切換視窗:    driver.switch_to.window()        #引數

WPF 視窗控制獲取和設定

WPF 視窗控制代碼設定和獲取 1、控制代碼類 WHwnd.cs public class WHwnd { /// <summary> /// 主窗體控制代碼 /// </summar

MFC 獲取當前視窗控制,或者父子視窗控制

父子視窗 在子視窗中,需要用到父視窗的控制代碼: AfxGetMainWnd()->m_hWnd 注:在父視窗中,也可以這麼用來呼叫自己視窗的控制代碼 在子視窗中,需要用到自己視窗的控制代碼 ChildDlg *pChildDlg ; pChildDlg->m_h

按鍵精靈 -獲取視窗控制

MessageBox "視窗右下角座標:" get_window_pos //得到當前最前面的視窗控制代碼-就是把需要的視窗啟用在最前面 Hwnd = Plugin.Window.Foreground() //得到滑鼠指向的視窗控制代碼Hwnd = Plugin.Window.Mo

web自動化-視窗控制及位置變化

在進行web自動化時,很容易會遇到多視窗進行切換測試,下面就對多視窗的一些控制代碼和切換及視窗控制代碼順序簡單總結一下 1 from selenium import webdriver 2 driver = webdriver.Firefox() 3 driver.get("https://www.b

python爬蟲丨Selenium切換視窗控制及呼叫Chrome瀏覽器

  一. 呼叫Chrome瀏覽器 首先,假設通過Firefox()瀏覽器定向爬取CSDN首頁導航欄資訊,審查元素程式碼如下圖所示,在div class="menu"路徑的ul、li、a下,同時可以定位ul class="clearfix"。  

C#獲取當前活動視窗控制

c# 獲取當前活動視窗控制代碼,獲取視窗大小及位置 2018年04月26日 13:48:21 漂泊_人生 閱讀數:1889   需呼

GetWindow、GetTopWindow和GetNextWindow(視窗控制獲取!!!)

GetWindow //uCmd 可選值:   GW_HWNDFIRST = 0; {同級別第一個}   GW_HWNDLAST  = 1; {同級別最後一個}   GW_HWNDNEXT  = 2; {同級別下一個}   GW_HWNDPREV  = 3;

VC 各種情況下的視窗控制的獲取

AfxGetMainWnd AfxGetMainWnd獲取自身視窗控制代碼 HWND hWnd = AfxGetMainWnd()->m_hWnd; GetTopWindow 函式功能:該函式檢查與特定父視窗相聯的子視窗z序(Z序:垂直螢幕的方向,即疊放

C# 影象處理: 獲取當前活動視窗控制,獲取視窗大小及位置

C# 影象處理: 獲取當前活動視窗控制代碼,獲取視窗大小及位置 需呼叫API函式 需在開頭引入名稱空間 using System.Runtime.InteropServices; 獲取當前視窗控制代碼:GetForegroundWindow() [DllImport("us

windows如何根據控制hwnd顯示和隱藏視窗

第一步,如何獲取控制代碼? 答案:通過FindWindow函式獲取,引數有兩個,分別為視窗名和視窗所屬類的類名,輸入一個即可,另一個可以為NULL。返回值是HWND型別。需要的標頭檔案是#include <Windows.h>,庫為user32.dll。 第二步,如何通過控制代碼