HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0111
きのよーIEコンポーネントにフォーカスを当てる(?)3解決


きのよー

リンク

2014/1/11(Sat) 22:57:15|NO.59298

ウィンドウをアクティブにした瞬間は、IEコンポーネントを操作できず(スクロールなど)、
マウスで一回領域をクリックしないといけません。
ウィンドウをアクティブにした瞬間にIEコンポーネントが操作できるようにするにはどうすればよいのでしょう?
誰かご教授をお願いします。



この記事に返信する


なたで

リンク

2014/1/12(Sun) 16:19:41|NO.59314

ウィンドウにフォーカスがあたったら、
ウィンドウ上に設置しているIEコンポーネントにフォーカスを当てるサンプルです。


#include "User32.as" #define WM_SETFOCUS 0x0007 #module "ie_hwnd_m" #define GW_HWNDNEXT 2 #define GW_CHILD 5 #define NULL 0 #define MAX_CLASSNAME 256 #define IE_CLASS_NAME "Internet Explorer_Server" // 指定したハンドルの子ウィンドウから、IEを探します #defcfunc getInternetExplorerWindowHandle int owner_handle, local return_handle, local child_handle, local target_handle, local classname GetWindow owner_handle, GW_CHILD child_handle = stat if(child_handle == NULL) { return(NULL) } return_handle = 0 target_handle = child_handle repeat sdim classname, MAX_CLASSNAME GetClassName target_handle, varptr(classname), MAX_CLASSNAME if(classname == IE_CLASS_NAME) { return_handle = target_handle break } return_handle = getInternetExplorerWindowHandle(target_handle) if(return_handle != NULL) { break } GetWindow target_handle, GW_HWNDNEXT target_handle = stat if(target_handle == NULL) { break } loop return(return_handle) // IEにフォーカス #deffunc setFocusMyInternetExplorer local target_handle target_handle = getInternetExplorerWindowHandle(hwnd) if(target_handle != NULL) { SetFocus target_handle } return #global title "タイトルバーをクリックするだけで、IEの上でマウスホイールが利用できるよ!" oncmd gosub *onSetFocus, WM_SETFOCUS pos 0,0 axobj ie, "Shell.Explorer.2", 640, 480 ie -> "Navigate" "https://news.google.co.jp/" await 500 setFocusMyInternetExplorer stop // フォーカスのイベント *onSetFocus setFocusMyInternetExplorer return



きのよー

リンク

2014/1/15(Wed) 22:19:08|NO.59336

なたでさん、詳しいスクリプトをありがとうございます。
ありがたく開発に使わせていただきます!



きのよー

リンク

2014/1/15(Wed) 22:19:26|NO.59337

また解決し忘れた…



ONION software Copyright 1997-2021(c) All rights reserved.