Re: [問題] wxruby 動態產生combobox命名問題

看板Ruby作者 (john with no name)時間14年前 (2010/11/10 22:12), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《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
文章代碼(AID): #1CsgX9Ai (Ruby)
文章代碼(AID): #1CsgX9Ai (Ruby)