選択されたテキストを取得するには?


キー  2006-06-30 21:30:02  No: 62395

選択されているテキストを取得する方法を探しています。
メモ帳、Office、その他、特定のアプリに限定せず
マウスやキーボードを使ってテキストを反転、選択状態にして
その部分の文字列を取得するような方法をご存知ないでしょうか?

上記の件とは少し性格が違いますが
http://shop.vector.co.jp/service/catalogue/sr076147/
のようなソフトを作りたいと考えています。

キャレットの位置を取得するようなAPIや
テキストボックスの文字列を取得するEM_XX系メッセージ
クリップボードを介す方法、
それからフックを使う方法など考えてみたのですが
どれもしっくりきません。
技術的には恐らく可能だと思うのですが

アイデアやヒント、こんなアプリが既に実現していますよ、など
情報をお待ちしています。宜しくお願いします。


dairygoods  2006-06-30 22:21:54  No: 62396

画面に文字や選択領域を表示する方法は無限にありますから、
どんなアプリケーションにも対応できる万能な方法はありません。
(画面を画像として取り込み、文字認識すれば可能でしょうが、
現実的ではないでしょう)

OS標準のテキストボックス限定なら、
ウィンドウハンドルを取得して EM_* メッセージを
いろいろ送れば取得できます。

相手が一般的なインタフェースを持っていることを期待して、
Ctrl+C キー入力を送りつける方法もあります。
その後、クリップボードから選択文字列を得られます。


キー  2006-07-01 02:58:48  No: 62397

dairygoodsさんコメントありがとうございます。
やっぱりちょっと難しそうですね。
今作ろうとしている物は
テキストボックスでない場合が多いので
クリップボードを介すアプローチも検討してみます。
クリップボードの履歴ソフトなどを併用していると
ごみが沢山残りそうですが・・・^^;
もう少し他の方からのご意見も聞いてみたいと思いますので
質問は閉じずに暫く様子を見たいと思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加