Delphi中點選網頁彈出的Alert對話方塊的確定按鈕
實現的方法有很多,一般都是使用Windows API函式遍歷視窗,查詢指定標題的視窗,然後從該視窗查詢確定按鈕,向該按鈕傳送滑鼠訊息進行模擬點選。由於IE8由Alert彈出的網頁對話方塊的標題是“來自網頁的訊息”,而IE6由Alert彈出的網頁對話方塊的標題是“Microsoft Internet Explorer”,所以本文沒有按查詢視窗標題方法獲取視窗控制程式碼。注意到不管IE哪個版本,IE視窗的類名都是“IEFrame”,而網頁對話方塊的父視窗是IE視窗,所以本文是根據父視窗的類名是不是IEFrame來判斷視窗是不是網頁對話方塊,以下程式碼點選網頁彈出的Alert對話方塊和Confirm對話方塊的“確定”按鈕,並用Label1控制元件顯示網頁對話方塊的訊息內容:
procedure TForm1.Button1Click(Sender: TObject);
var
hIE, hDlg, hBtn, hStatic:HWND;
Text: array[0..255] of char;
begin
hDlg := GetWindow(Handle, GW_HWNDFIRST);
While hDlg <> 0 do
begin
hIE := GetParent(hDlg);
if GetClassName(hIE, Text, 255) > 0 then //獲取父視窗類名
if Text = 'IEFrame' then //父視窗為IE視窗
begin
hBtn := FindWindowEx(hDlg, 0, nil, '確定'); //檢視確定按鈕
if hBtn <> 0 then
begin
hStatic := FindWindowEx(hDlg, 0, 'Static', nil);
hStatic := FindWindowEx(hDlg, hStatic, 'Static', nil);
if GetWindowText(hStatic, Text, 255) > 0 then
Label1.Caption := Text;
Sleep(100);
SendMessage(hBtn, $00F5, 0, 0); //第一次點選使確定按鈕獲取焦點
Sleep(100);
SendMessage(hBtn, $00F5, 0, 0); //第二次點選擊中確定按鈕
end;
end;
hDlg:=GetWindow(hDlg,GW_HWNDNEXT);
end;
end;
相關文章
- VB.net MessageBox彈出的確認對話方塊點選確定按鈕
- 關於showModalDialog()對話方塊點選按鈕彈出新頁面的問題
- TWebBrowser禁止彈出Alert對話方塊Web
- asp.net 中點選按鈕彈出模式對話方塊,選擇值後返回到頁面中(window.showModalDialog實現)ASP.NET模式
- JavaScript練習題目(3)點選按鈕顯示確認對話方塊JavaScript
- javascript中的彈出對話方塊JavaScript
- iOS專案開發實戰——監聽對話方塊的按鈕點選事件iOS事件
- Java 中彈出對話方塊的幾種方式Java
- 原生js實現的點選彈出螢幕居中對話方塊效果JS
- 短視訊平臺原始碼,長按視訊、對話方塊彈出操作可選按鈕原始碼
- ASP.NET_頁面中彈出對話方塊幫助類ASP.NET
- 現在有一個按鈕,點選一下就能彈出像Winform中的那另存為的對話方塊,在WebForm中應該怎麼實現ORMWeb
- JavaScript點選按鈕彈出層效果JavaScript
- JavaScript彈出儲存對話方塊JavaScript
- 點選按鈕彈出一個居中div
- pageoffice6 版本線上開啟檔案彈出網頁對話方塊網頁
- 關於bootstrap彈出二級對話方塊的使用boot
- VUE:點選開啟的對話方塊外面時,對話方塊總是被關閉Vue
- 在Android的webview中定製js的alert,confirm和prompt對話方塊的方法AndroidWebViewJS
- 單選按鈕和核取方塊
- jQuery獲取選中的核取方塊或者單按鈕的值jQuery
- Ant Design 中 對話方塊Modal 作為詳情彈框展示 右下角只需一個按鈕
- 去掉手機頁中按鈕點選背景
- 一個js編寫全選、彈出對話方塊、ajax-json的案例JSON
- 直播平臺原始碼,簡單實現 彈出確認 取消對話方塊原始碼
- 給應用程式加個彈出對話方塊
- Java在Swing中如何實現彈出一個對話方塊的效果?Java
- 實現對gridview刪除行時彈出確認對話方塊的一種簡單方法View
- 直播視訊app原始碼,底部彈出的列表對話方塊APP原始碼
- React中的模式對話方塊React模式
- [MFC]選擇目錄對話方塊和選擇檔案對話方塊
- 防止頁面按鈕多次點選
- c#中的模態對話方塊和非模態對話方塊C#
- Alert Dialog "Done"按鈕定義.
- 點選刪除按鈕彈出是否刪除提示框
- 點選瀏覽器後退按鈕時彈出提示資訊瀏覽器
- android漂亮的對話方塊專案sweet-alert-dialogAndroid
- #在ios9及以上系統中建立對話方塊並彈出iOS