はじめまして、Ruby歴3カ月のAkitaです。
クリップボードビューアの内容をコマンドラインに出力したいというプログラムです。
Gtk v1.3 まで待てないので無理矢理作ろうとしています。
Gtk::timeout_addのところでエラーがでてうまくいきません。
最終目的はLANのWindowsマシンを含むクリップボードを共有することですから
CygwinとLinuxマシンで動けばいいと思っています。
require 'gtk'
class ClipboardViewer
def initialize
window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)
@text = Gtk::Text.new
@text.set_editable true # テキストの入力・編集を許可する
Gtk::timeout_add(100) do
# @text.paste_clipboardを実行しようとすると以下のエラーがでます。
# Gdk-CRITICAL **: file gdkevents.c: line 724 (gdk_event_free): assertion `event != NULL' failed.
# エラー ↓
@text.paste_clipboard
end
window.add @text
window.show_all
Gtk::main()
end
def get_clipboard
@text.paste_clipboard
p @text.get_chars(0,-1)
end
end
if $0 == __FILE__
ClipboardViewer.new
end
--
秋田一輝 (Akita Kazuki)
http://tat6.ice.ous.ac.jp/akita/