From: Nobuyuki Horie Date: 2000-02-05T20:34:25+09:00 Subject: [ruby-list:20511] swigruby example(Qt) 堀江ともうします。 最近このMLに参加したばかりで、いきなり質問で恐縮ですが。 rubyからQt libraryを使えないか調べていて、Fukushimaさんのかかれた swigrubyの中のexampleにqtモジュールのあることを知り、 できるだけこれを拡張しようとしているところです。 ところが、qtモジュールでとりこまれた、QWidgetなどを継承した クラスを作ることができないようです。 たとえば、以下のように、QWidgetの下にMyWidgetを つくろうとしても、できたインスタンスはQWidgetのインスタンスに なってしまうようなのです。 これは、こういうものなのでしょうか? (最近rubyを始めたばかりなのでとんちんかんなことを言っているかもしれません。) よろしくお願いします。 ruby> require 'qt' true ruby> include Qt Object ruby> a = QApplication.new([$0] + ARGV) # ruby> class MyWidget < QWidget # QWidgetのしたにMyWidgetクラスを作る ruby| def initialize ruby| super ruby| end ruby| def printName ruby| print "My name is MyWidget\n" ruby| end ruby| end nil ruby> mw = MyWidget.new # #これはQWidgetのインスタンス? ruby> mw.printName #MyWidgetで作ったはずのメソッドが使えない。 ERR: (eval):1: undefined method `printName' for # ruby> mw.type Qtlib::QWidget #どうもMyWidgetではないみたい。 ruby> -- ************************************** Nobuyuki Horie, Ph.D. Lab. Genetic Engineering/Univ. of Shizuoka mail: horie@smail.u-shizuoka-ken.ac.jp home page: http://www.u-shizuoka-ken.ac.jp