Babylon 辞書と他のいくつかの辞書では、任意の Windows プログラムで任意の単語をクリックすると、カーソルの下にある単語が自動的に認識され、インストールされている辞書でその単語を検索しているときに、すぐに辞書ウィンドウを開くことができます。一方、辞書を開いて単語を入力し、Enter キーを押すと、結果は同じになります。
たとえば「Automaton」という単語を含むテキスト ラベルを含む Delphi フォームがあります。
私の質問は:
手動で入力して Enter キーを押したかのように、Delphi アプリケーションから単語を辞書ウィンドウに直接送信する方法は?
最善の解決策は、Windows メカニズムを介してメッセージを送信することですが、それが複雑すぎる場合は、別の解決策があります。2 番目の答え: 説明したように、[Ctrl+マウスの左] クリックをモデル化する必要があります。この単語は、フォーム [私の Delphi アプリケーションの画面上のビジュアル ラベル] に表示されます。正確には、このラベルの中央のピクセルに表示されます。
Delphi で何かを行う方法について、親切にアドバイスをいただけますか?
** 編集: AppActivate の問題は次のとおりです。Babylon dict には、トレイに収まるデーモン部分があります。タスク マネージャーでは、テキストを入力する必要がある実際のウィンドウも「Babylon」という名前になっています。したがって、AppActivate('Babylon') は、アプリケーションの非表示部分を前面に表示しようとします。
ウィンドウ ハンドルまたはアプリケーションの実際のビジュアル部分を特定する方法について何か提案はありますか? タスクマネージャーでは、視覚部分と非視覚部分の両方が「バビロン」と名付けられていることを繰り返します。