【UWSC】クリップボード監視&出力

個人的な備忘録です。

■UWSCでクリップボードの状態を監視

▼機能:内容に変更があったら表示用ウィンドウに内容を貼り付けます。

個人的な用途:リサーチするときなど、気になった情報をどんどんコピーしたいときに活用。

▼サンプルコード

// Try-Finally間で強制終了が発生した時にも必ず Finally部を実行する
OPTION OPTFINALLY

// 変数準備
output_text = ""
prev_clip = getstr(0)

TRY
	while true
		sleep(0.5)
		
		//クリップボードの中身が変わったら、表示用ウインドウに内容を出力します。
		if getstr(0) <> prev_clip then
			prev_clip = getstr(0)
			output_text = output_text + prev_clip + "<#CR>"
			print prev_clip
			
		endif
	wend

FINALLY
	// プログラムの終了時に、これまで取得したデータを保存する。
	fid = FOPEN("output_clip.txt", F_WRITE)    // ファイルオープン
	FPUT(fid, output_text)
	FCLOSE(fid) 
	
ENDTRY

▼解説:

getstr(0)
文字列取得関数。引数1 を 0指定でクリップボードから文字列取得

print 文字列
表示用ウィンドウへ文字列を送信

TRY ~ FINARY ~ ENDTRY
TRY - FINALLY 
TRY内の処理中断時にも、FINALLY部分を必ず実行する。

FOPEN(ファイル名, オープンモード) / FCLOSE(ファイルID)
テキストファイルを開く/テキストファイルを閉じる。
※ファイルIDは、FOPEN時に取得。

FPUT(ファイルID, 書き込み値)
ファイルに値を書き込む。

この記事が気に入ったらサポートをしてみませんか?