afxLua / winman (続)

2016-09-12 :  PCクリニック
本文の前に、
-・・・ -・-
現時点での blogramのランクインカテゴリは、
7、2、0、0、0、 0、1、0、0、0(40)で、換算ポイント 87pt 。
「化学業界」「硝子業界」「FM COCOLO」「e-radio」「グルコサミン」、
「Firefox」bg値変動。「Perl」「C言語」「Python」「FM青森」変化無し。
・-・ - -・

さて、本文。

以前(2016-09-07)の記事「afxLua / winman
の続き。

即ち“winman”の学習結果2件:

(1)マウス操作、特にドラッグ&ドロップ

(2)ウィンドウ・ハンドルの取得



(1)マウス操作&他
----- test_winman_2.gsl -----
require'winman'

----- “メモ帳”起動して、文字入力
os.execute( 'start notepad' )
b = winman.find{matchtitle=".+メモ帳$", wait=4000}

b:activate()
winman.send( 'Lua{ENTER}' )

----- 500ミリ秒時間待ち
winman.sleep( 500 )

----- 窓の位置、マウスカーソル位置
SZ = winman.desktopwindow():size() -- { height=○, width=○ }
pos = winman.at() -- { y=○, x=○ }

----- 現在位置で、マウス左ボタンを1回クリック
winman.click( 'l', 1 )

----- マウス ドラッグ&ドロップ:{1280,100}から{300,900}へ
winman.drag( 1280, 100, 300, 900 )
こんな感じかナ?


(2)ウィンドウ・ハンドルの取得
----- test_winman_3.gsl -----
require'winman'

os.execute( 'start notepad' )
b = winman.find{matchtitle=".+メモ帳$", wait=4000}
----- この b は、window object

b:activate()
winman.send( 'Lua{ENTER}' )

-----------------------------------------------------
ffi.cdef[[
void MoveWindow( void* hWnd, int X, int Y, int W, int H, int bRepaint );
]]

----- 上記 b から hwnd へ変換:
hwnd = ffi.cast( 'void*', ffi.cast( 'int*', b )[0] )

----- 窓の表示位置:左上隅から、サイズ 800x600
ffi.C.MoveWindow( hwnd, 0, 0, 800, 600, 1 )
のようだナ?


本日はここまで。


afxLua ライブラリの学習は続く?


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒ blogram投票ボタン


160805
関連記事
スポンサーサイト

コメントの投稿

管理者にだけ表示を許可する

おきてがみ/blogram
blogram投票ボタン



おきてがみ

最新記事
カレンダー
07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
月別アーカイブ
カテゴリ
最新コメント
検索フォーム
リンク
プロフィール

<紙>

Author:<紙>
ようこそ。
「パソコンヲタクの雑記帳」
もろもろなことを綴っています。
パソコン ヲタクってねくら?
画像は kami でなく kani です。

カウンター(fc2、i2i) /Google Analytics


i2i(from 2010-08-24)
Total =
Today  =  
Yesterday=
アンチエイジング

Google Analytics
ブックマーク