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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0210
健人他のソフトのボタンを自動で押したり、入力欄に自動で入力する方法5解決


健人

リンク

2009/2/10(Tue) 00:20:12|NO.23306

題名の通り、このような方法を探しています。
自分である程度調べたのですが、hspextを使うことくらいしか分かりませんでした・・
何方か回答宜しくお願いします。



この記事に返信する


hue

リンク

2009/2/10(Tue) 13:25:05|NO.23309

hspextを使うなら

aplsel aplobj aplstr らへんをヘルプで見てみてください。



健人

リンク

2009/2/11(Wed) 16:00:36|NO.23340

hueさん、回答有難うございます

また疑問が出来てしまったのですが
aplobjの、「取得するオブジェクトのクラス名」とは
一体なんのことなんでしょう?
aplobjについて調べたらサンプルの置いてあるサイトを
見つけたのですが、そこには「aplobj "Edit", 0」と書いてあったので
Editで試してみると、操作に成功する入力欄と失敗してしまう入力欄がありました。
失敗した部分は、クラス名が違うということなんでしょうか。
Edit以外のクラス名には何があるのか、誰か教えてください



SYAM

リンク

2009/2/11(Wed) 17:24:19|NO.23342

HSPはその辺のことを勝手にやってくれるようになっていて、普段意識することはまったくないものですが、ここでいう「クラス」とはWindowsのプログラムで必ず扱うことになる要素です。
もし理解したければHSPだけの勉強では絶対に済まなくなります。

…が、
とりあえずHSPのaplナントカを使ってみたいのであれば、以下のスクリプトを実行してみてください。

#uselib "user32.dll" #func global GetClassName "GetClassNameA" int,int,int #func global WindowFromPoint "WindowFromPoint" int,int sdim classname,256 screen 0,320,24,0 : gsel 0,2 : title "カーソル位置のオブジェクトのクラス名." mesbox classname,320,24,0,256 *MAIN_ROUTINE classname="" WindowFromPoint ginfo_mx,ginfo_my GetClassName stat,varptr(classname),256 objprm 0,classname wait 10 goto *MAIN_ROUTINE

実行すると、マウスカーソルを当てたところにあるもののクラス名を表示します。
この「あるもの」というのが「オブジェクト」です。ボタンだったりスクロールバーだったりいろんなオブジェクトがあります。ウインドウそのものもオブジェクトです。

画面上のいろんなところに当ててみてください。
Windowsの画面に見えているものが、いろんな「クラス」の「オブジェクト」でできているのがわかりますよ。



ANTARES

リンク

2009/2/12(Thu) 00:33:15|NO.23358

 本題はsample\hspext\aplkey.hsp
クラス名についてはsample\hspext\aplkey3.hsp



健人

リンク

2009/2/12(Thu) 20:02:07|NO.23369

お二方、回答ありがとうございました!

HSPでこんなことまで出来るんですね
自分も勉強して、色々なソフトが作れるようになりたいと思います



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