中村 のりつぐ です。

In article <20011202203409.03905ce3.mutoh / highway.ne.jp> 
MUTOH Masao <mutoh / highway.ne.jp> wrote:
> 了解しました。今夜中に固めておきます。

get しました。ありがとうございます。


> ruby-talk:21472の件は以下のようなコードになると思います。
> が、これだとカーソル位置がおかしくなっちゃうんですよね。

> ----
> require 'gtk'
> 
> entry = Gtk::Entry.new
> handler_id = entry.signal_connect("insert_text") do |widget, text, pos|
>   entry.signal_handler_block(handler_id)
>   entry.insert_text(text.upcase!, pos)
>   entry.signal_handler_unblock(handler_id)
> 
>   entry.signal_emit_stop_by_name("insert_text")
> end
> 
> window = Gtk::Window.new
> window.add(entry)
> window.show_all
> Gtk.main

    entry.insert_text(text.upcase!, pos)
の部分を

  if text =~ /\d/
    entry.insert_text(text, pos)
  end
としたら数値のみ入力できるようになりました。
確かにカーソル位置が移動せずちょっと変。

       中村 典嗣  E-mail:     nnakamur / mxq.mesh.ne.jp