-
根據補充資料,現作如下修改:
將控制命令1新增到表單中,然後複製以下**,執行,啟動繪圖程式,單擊command1,即可找到所需的繪圖紙手柄!
option explicit
private declare function findwindow lib "user32" alias "findwindowa" (byval lpclassname as string, byval lpwindowname as string) as long
private declare function findwindowex lib "user32" alias "findwindowexa" (byval hwnd1 as long, byval hwnd2 as long, byval lpsz1 as string, byval lpsz2 as string) as long
private sub command1_click()
dim huatu, huazi
dim i as integer
huatu = findwindowex(0, 0, vbnullstring, "無題 - 畫圖")
do until huatu = 0
huazi = findwindowex(huatu, 0, "afxframeorview42u", vbnullstring)
huazi = findwindowex(huazi, 0, "afx:1000000:8", vbnullstring)
i = i + 1
msgbox "查詢部分" & i & "一張繪圖紙,它的控制代碼是:" & huazi
huatu = findwindowex(0, huatu, vbnullstring, "無題 - 畫圖")
loopend sub
-
declare function findwindowex lib "user32" alias "findwindowexa" (byval hwnd1 as long, byval hwnd2 as long, byval lpsz1 as string, byval lpsz2 as string) as long
hwnd1 是您在記事本中找到的視窗句子蛋糕。
dim hwnd2 as long
hwnd1 = findwindow(vbnullstring, "你好")
hwnd2= findwindowex(hwnd1,0,vbnullstring,"傳送")
-
private sub command1_click()dim h&
doh = findwindowex(, h, vbnullstring, vbnullstring)
if h <>0 then
hend if
loop until h = 0
end sub
例如,這是列舉當前窗體的所有子窗體(控制項),如果需要獲取其他窗體的子窗體控制代碼,可以將它們更改為父窗體控制代碼。
-
public declare function getwindow lib "user32" alias "getwindow" (byval hwnd as long, byval wcmd as long) as long
獲取與源視窗具有特定關係的視窗的控制代碼。
返回值:long,由 wcmd 確定的視窗控制代碼。 如果未找到匹配的視窗,或者遇到錯誤,則返回零值。 設定了 GetLastError
hwnd --long,源視窗。
wcmd --long 指定結果視窗和源視窗之間的關係,該關係基於以下常量:
gw_child
查詢源視窗的第乙個子視窗。
gw_hwndfirst
查詢源子視窗的第乙個同級(同級)視窗,或查詢第乙個頂級視窗。
gw_hwndlast
查詢源子視窗的最後乙個同級(同級)視窗,或最後乙個頂級視窗。
gw_hwndnext
查詢源視窗的下乙個同級視窗。
gw_hwndprev
查詢源視窗的上乙個同級視窗。
gw_owner
查詢視窗的所有者。
同級或同級是在整個層次結構中處於同一級別的視窗。 如果乙個視窗有五個子視窗,則這五個視窗是同級視窗。 儘管 GetWindow 可用於列舉視窗,但如果要在列舉過程中重新定位、建立和清除視窗,EnumWindows 和 EnumChildWindows 更可靠。
選擇 gw owner(查詢視窗的所有者)作為引數。
-
getparent
在。 獲取直接位於父視窗下的視窗的處理程式
視窗的直接父級可能是混亂的,這意味著您可以使用 setparent 來設定視窗的父級(但這可能是危險的,並且可能是遺傳的)。
-
declare function findwindowex lib "user32" alias "findwindowexa" (byval hwnd1 as long, byval hwnd2 as long, byval lpsz1 as string, byval lpsz2 as string) as long
hwnd1 是您在記事本中找到的視窗句子蛋糕。
dim hwnd2 as long
hwnd1 = findwindow(vbnullstring, "你好")
hwnd2= findwindowex(hwnd1,0,vbnullstring,"傳送")
可以考慮判斷系統時間。 如果你這麼久沒有聯絡它來修改你的密碼,如果你只需要每週修改一次,你可以手動修改,這是安全的。 >>>More