• ベストアンサー

他アプリのボタンの状態を知りたい

他アプリのボタンがVBでいうところの「Enabled」の状態が"farce"か"true"なのかを取得したい場合のAPIと使い方を教えて欲しい 環境はVB6SP5環境の開発です

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

Windows APIのIsWindowEnabledを使用。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpwinui/html/_win32_iswindowenabled.asp ただ、普通はその前の、「対象のウィンドウハンドルを取得」するところからだと思いますが。

HITPOINT100
質問者

お礼

助かりました。 ウィンドウのハンドルは取得済みですが、 APIが見付けられなくて…… これで、開発がはかどります。 ありがとうございました。

関連するQ&A

  • 他アプリのボタンを押したいのですが・・・

    VB6.0です いま自作アプリに挑戦しているのですが、他アプリのボタン制御で苦労しています。 他にも似たような質問がありますが、VBのアプリに対してはうまくいくのですがCで書かれたアプリには反応しません。 Cのアプリのボタンを押すにはどうすればいいでしょうか? できればコードもよろしくお願いします。

  • 他のデスクトップアプリのデータを取得したい

    VB.NET2003開発環境を持っています。 他の人が開発した、Windowsデスクトップアプリのラベル・テキストボックス・コンボボックス等のコントロール名とプロパティを取得したり、値を送る方法を調べています。 SendMessageとかAPIとかSpy++とか色々出てきたのですが、解決には至りません。 本屋などで書籍も見たんですが、欲しい機能はのっていません。 解決のヒントを頂きたいです。

  • 他のアプリのボタンを押したいです。

    VB.NETのプログラムで、他のアプリのボタンを押したいです。 例えばWindowsメディアプレーヤーの再生ボタンだった場合 そのボタンのID?のようなものを調べて押したと知らせる コード?をメディアプレーヤーに送信するようなことは出来るでしょうか。 できるようでしたらボタンのIDのようなものを調べる方法と それに対して押したというメッセージを送る方法を教えて頂きたいです。 宜しくお願い致します。

  • VBで他アプリの「syslistview32」のテキストを取得したい

    VB6で他アプリの「syslistview32」のテキストを取得したいのです。 取得するためにはAPIを使用すると思うのですが、 使用するAPIが分かりません。 記述方法など分かる方、簡単でいいので教えて頂けるとありがたいです。 また、解説しているHP等がありましたら紹介頂けるとありがたいです。 よろしくお願いします。

  • CreateProcessWithLogonWの使い方を教えてください

    現在VBで開発しているのですがAPI関数であるCreateProcessWithLogonWの使い方がわからずつまずいています。 この関数はAPIビューアーにも掲載されていなくて使い方がわからずとても困っています。 ご教授ください。 開発環境 開発環境:VB6.0+SP5 OS:Windows2000+SP2

  • VB.NETで他のアプリが完全に起動するまで待機する方法を教えて

    VB.NET+WinXP環境なのですが、VB.NETで他のアプリを開いて MainWindowTitleでウィンドウタイトルを取得して、 それを元にFindWindowExでハンドル(Hwnd)を取得したいのですが Process.Start(ApplicationA) でアプリが完全に起動し終わる前に次の処理へ移ってしまい、 MainWindowTitleを取得する時に中身が""になってしまったり、 本来なら例えば 「Yahoo! JAPAN - Microsoft Internet Explorer」となるべきところを 「 - Microsoft Internet Explorer」の状態で取得して 次に進んでしまったりします。 起動を実行した後に、Sleep(2000)などを入れると大丈夫なのですが、 必要なSleep時間はマシンや開くアプリによって違うので不都合があります。 APIのWaitForInputIdleもHwndが取得できてからでないと使用できないようです。 恐れ入りますが、良い方法がありましたら、 ご教示頂きたく、お願い致します。

  • ボタンを押す度に凹凸状態を変化させたい

    eclipseでAndroidのアプリを作っていますが、どうしても解決できない事があるので教えて下さい。 (初心者の為、調べていてヒントがあったのかもしれませんが、ヒントすら見つけられませんでした) ・見つけられなかった事 ボタンを押すと凸状態から凹んだ状態となり、再度押すと元の状態(凸状態)にする。 ・やりたい事 画面に8個のボタンを配置して、それぞれのボタンの表示部分にDB(SQLite)より最大8件の名前(文字列)を取得しセットする。 取得する件数が8件に満たない場合、取得できなかった分についてはボタンが押せない状態にする。 各ボタンを押すと凸状態から凹んだ状態となり、再度押すと凹んだ状態から元の状態(凸状態)にする。 (例:DBから7件取得した場合、7個のボタンに取得した名前を表示して、1個のボタンは押しても反応しないようにする) また、同じ画面に押すだけの登録ボタンも配置しておき、登録ボタンが押された場合は凹んだ状態のボタンについての表示文字列(名前)を取得し、DB(SQLite)を更新する。 更新処理詳細:ボタンから取得した名前と一致するレコードは、FLG列に1をセットする。        また、ボタンから取得した名前と一致しないレコードは、FLG列に0をセットする。 以上です。 助けて下さい。 os: windows 7 eclipse: Version: 4.2.0 Build SDK: Android 4.1(API 16)

    • ベストアンサー
    • Java
  • 他のアプリからVBのFormへフォーカスを戻したい。

    「他のアプリケーションにフォーカスがある場合に、 ショートカットキー(例:Ctrl+a)を押すと、 VBのFormへフォーカスが移る」ということをVBでプログラムしたいのですが、APIを使うのでしょうか? VBのイベントなどを使用したプログラミングの経験はあるのですが、APIの使い方は分かりません。 どなたか教えてください。よろしくおねがいします。

  • Xp環境でVB6.EXE起動中待ち状態で他のアプリ

    何方か、アドバイス頂ければ幸いです。 Xp(SP3) の環境でVB6(SP6)で作成したアプリを実行中、たとえば、DB問い合わせで 待ち状態になった時、Excel 等を起動させようとすると、待ち状態が完了するまで 立ちあがってきてくれません。 また、この時、デスクトップにあるアイコンが、点滅状態になってしまします。 NT4.0の時は、このような現象にはなりませんでした。 プログラムの作りが悪いのでしょうか?、それとも、Xpでは当然の現象なのでしょうか?。 ご指導の程、宜しくお願い致します。

  • VB.NETでブラウザのフォームに入力する方法について

    VB.NETでブラウザに表示されたWEBページのフォームに データを入力したり、ラジオボタンの設定をしたりしたいのですが、 入力内容によってフォームの入力欄がEnabled = True や Falseに 切り替わる入力欄がある場合、VBでそのエレメントに データを設定してもフォームを送信などをした際に反映されていません。 例えばラジオボタンで選択A、選択B、その他という3つの選択があって、 その他を選択すると、テキスト入力エリアが入力可能になるというフォームです。 ブラウザに直接手動で設定を変更すれば、入力欄のEnabledが切り替わるのですが、 VBでラジオボタンを設定した場合は切り替わらず、Enabled = False の状態のまま VBでデータを設定しても受け付けられないようです。 この為、VBでデータを設定した際に、別の欄のEnabledの状態を変えたいのですが、 どのような方法でやれば良いでしょうか。ご教授いただければ幸いです。

専門家に質問してみよう