Re: [問題] wxruby 動態產生combobox命名問題
※ 引述《galo (john with no name)》之銘言:
: 環境:
: Ruby 1.9.1 + wxruby-ruby19 (2.0.1)
: 狀況:
: 小弟在撰寫的功能是使用者按下按鈕後,會根據讀入的資料類別
: 不同,而產生數個不等的combobox,由於讀入的過程是在迴圈中,而且數目
: 不固定,因此對於combobox物件產生時的命名感到很困擾。
: 而且combobox產生之後,根據combobox中選到的選項不同,必須再給
: 予相對應的事件觸發,不知道該用什麼方式比較好??
: 不知道有沒有人遇過相同的囧境....謝謝!
: 附錄:
: 程式碼大概的架構是這樣…
: array1.each_with_index do |d1,x|
: list = Array.new
: array2.each_with_index do |d2,y|
: list.push(some_data) if d1 == d2
: end
: Combobox.new(self,-1,"#{d1}",[100,60+x*40],[100,30],list)
: end
後來在wxruby的網站上面終於找到了相關的做法,提供給有相寫類似功能的人一個參考
動態產生的物件,一樣用上面的方法建立出來,在new的時候不用給名字沒關係
但是在處理combobox的event時,要這麼使用:
evt_combobox(Wx::ID_ANY) { |event|
obj = event.get_event_object()
.....
}
如此一來,觸發事件的物件雖然建立時沒有命名,但是還是有辦法
在處理event的時候,利用一些物件的方法,如:obj.get_value
來知道現在觸發event的是那個物件,進而做到對應的處理!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.86.185.69
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章