0
我在音頻應用程序環境中使用Ruby組件。此Ruby組件由RubyEdit
類的實例表示。這提供了我的Ruby代碼和環境之間的接口。如何動態添加/擴展類的方法?
例如,如果我寫self
它輸出表示該組件的RubyEdit類的實例:
的好處之一是,我可以/必須「實現/擴展」一些方法RubyEdit
當它得到一些事件時會打電話。我可以定義我的自定義方法event
該實例:
def event
# my own event code
end
,它會被調用當環境得到這個Ruby組件以外的一些事件。或者,我可以叫class method
叫redraw
,它會叫我的自定義方法draw
:
def draw
# my own draw code (this will called after invoking redraw from Ruby Component)
end
我需要了解這個過程的一些層次,所以我做的紅寶石是RubyEdit
類的模擬。
它會如何看起來?我的意思是:我如何提供將在「稍後」定義的方法?
這是RubyEdit會怎麼看,我認爲:
class RubyEdit
def self.redraw
# calling this class method should invoke my extended draw method
end
def draw
end
def event
end
end
,但我不明白如何放置event
和draw
方法可擴展。接口?