私の貧弱な英語で最初に申し訳ありません...私は疑いがあります..実用的なプログラマーのためにFXRubyを読んでいます..そして私はこのコードを見ました
require 'fox16'
include Fox
class HelloWindow < FXMainWindow
def initialize(app)
super(app, "Hello, World!" , :width => 200, :height => 100)
end
def create
super
show(PLACEMENT_SCREEN)
end
end
app = FXApp.new
HelloWindow.new(app)
app.create
app.run
これは非常に基本的な例です...実際には彼の最初の例です..しかし、私はそれを理解していないより初心者です:
app は FXAPP オブジェクトです。次に、HelloWindow オブジェクトを作成し、「app」という名前の FXApp オブジェクトを渡します。
ここまでは順調ですね
しかし今...本の書き込み app.create で、FXAppクラス内で「作成」メソッドを呼び出しています...それともそうではありませんか?..
app.create..ruby を呼び出すときに、HelloWindow 内で create メソッドを呼び出すのはなぜですか?..app は HelloWindow クラスとは非常に異なるオブジェクトであり、(スーパーを使用する場合のように) 祖先メソッドを呼び出すことはできますが、逆の方法ではできません。 ..
なぜ彼らはそれをこのように呼ばないのですか
helloobject=HelloWindow.new(app)
helloobject.create
このようにして、HelloWindows クラス内で create メソッドを呼び出します。これは FXMainWindows の子孫です。
あなたが理解できることを願っています(私の下手な英語で申し訳ありません)そして私を助けてくれることを願っています
本当にありがとう