クリップボードを監視するには?

解決


exam  2001-04-19 04:52:37  No: 74162  IP: [192.*.*.*]

クリップボードの内容が変わったときに
処理をするにはどうすればいいのでしょうか?
教えて下さい。

編集    削除
ZORO  URL  2001-04-19 05:23:25  No: 74163  IP: [192.*.*.*]

タイマーコントロールを使って、一定間隔で監視してはどうでしょうか?

編集    削除
α  2001-04-20 02:56:53  No: 74164  IP: [192.*.*.*]

賛成

編集    削除
exam  2001-04-20 03:25:51  No: 74165  IP: [192.*.*.*]

それはいい案ですね。
なんかしょうもない質問ですいません。

編集    削除
たかみちえ  2001-04-20 09:31:51  No: 74166  IP: [192.*.*.*]

えっと、それでもいいんですけど^^;
  それだと、他のアプリケーションがクリップボードを使おうとすると、エラーが出ます。
あとたまに、奇妙な文字列がうしろにくっつきます^^;
(Labelとかに出力した場合)
やっぱりそれだとつらい…。
APIがあったと思うんですけど…?

編集    削除
α  2001-04-20 16:57:08  No: 74167  IP: [192.*.*.*]

独占するAPIならいいですね

編集    削除
PAPY  2001-04-20 21:05:34  No: 74168  IP: [192.*.*.*]

クリップボードを監視するには
SetClipboardViewer()API      
を使ってクリップボードビューアチェインに自ウインドウを追加して、
更に自ウインドウをサブクラス化してWM_DRAWCLIPBOARDやWM_CHANGECBCHAINメッセージを取得して対応しなければいけません。
すると監視することが出来ます。

クリップボード監視関連のAPI

SetClipboardViewer  クリップボード ビューア チェインにウィンドウを追加
ChangeClipboardChain  クリップボード ビューア チェインからウィンドウを除去

VBでなくDelphiのサンプルだったらあるよ!!。
(VB版は最近時間が無くて作れない・・・)
http://madia.world.coocan.jp/Delphi/tokusen.htm

編集    削除