|
From: Kouhei S. <ko...@co...> - 2011-03-10 13:05:58
|
須藤です。
In <AAN...@ma...>
"Re: [ruby-gnome2-devel-ja] Gtk::Window#add_accel_group と Gtk::Entry の干渉" on Sat, 19 Feb 2011 03:13:43 -0500,
Sawada Tsuyoshi <saw...@gm...> wrote:
> 新しいルビーが出たようなので、アップグレードしました。環境は
> ruby 1.9.2p180 (2011-02-18 revision 30909) [i686-linux]
> gtk2 (0.90.7)
> になりましたが、同じ問題が続いています。お時間のとれるときに対応していただけたら幸です。
この問題が再現する人っていますか?
相変わらず私の手元だと再現しないです。。。
In <AAN...@ma...>
"[ruby-gnome2-devel-ja] Gtk::Window#add_accel_group と Gtk::Entry の干渉" on Sat, 19 Feb 2011 01:09:02 -0500,
Sawada Tsuyoshi <saw...@gm...> wrote:
> Gtk::Window#add_accel_group
> を使って、キーを割り当てようとするとき、Gtk::Entry(またはGtk::TextView)がWindow内にあり、かつキーが押されたときに実行されるべきブロックの中にある種のメソッド(例えばputs)があると、イベントが2重に発生するのですが、これは仕様ですか。1回しか発生させないようにするにはどうしたらいいですか。
>
> 具体的には、下のコードで、(a), (b)の行のうちの一方がコメントアウトされたとき、1回Ctrl-Aをおすと、
>
> This does not duplicate the event
>
> と表示されますが、(a), (b)がともにある場合には、1回Ctrl-Aをおすと、
>
> This does not duplicate the event
> But this does
> This does not duplicate the event
> But this does
>
> と表示されてしまいます。
>
> ------- コード --------------------------------------------
> require 'gtk2'
> ag = Gtk::AccelGroup.new.
> connect(Gdk::Keyval::GDK_A, Gdk::Window::CONTROL_MASK, Gtk::ACCEL_VISIBLE) {
> p 'This does not duplicate the event'
> puts "But this does" # (a)
> }
>
> Gtk::Window.new.
> add(Gtk::Entry.new). # (b)
> add_accel_group(ag).show_all
> Gtk.main
> -----------------------------------------------------------------
|