[問題] wxWidgets Layout() 沒有效果?

看板C_and_CPP (C/C++)作者 (小小吳)時間15年前 (2010/07/07 22:37), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串1/1
遇到的問題: (題意請描述清楚) 當我在執行階段動態把wxStaticText的顯示內容變更後(變長,長度超過原本欄的大小), 使用Layout()指令沒有出現預期的重新排版效果 物件是放在wxFlexGridSizer裡面 希望得到的正確結果: 使用Layout()指令後似乎應該會讓含有這個wxStaticText的欄位變寬...? (因為此wxStaticText的內容變得比欄還寬) 程式跑出來的錯誤結果: 跟沒有執行Layout()的效果是一樣的,結果wxStaticText變長後還蓋住右邊的按鈕 PS.同樣的code移到Ubuntu下測試正常,有正確排版 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) 有問題的平台: Windows Vista 家用進階 SP2 / CodeBlocks / MinGW / wxWidgets 2.8.10 wxWidgets 2.8.11 (兩個版本都試過) 測試正常的平台: Ubuntu 10.04 / CodeBlocks / GCC / wxWidgets 2.8.11 有問題的code: (請善用置底文標色功能) 在這篇範例: http://tinyurl.com/2dndylj void Tutorial_6Frame::OnButton1Click(wxCommandEvent& event) { StaticText1->SetLabel(_("Label changed")); Layout(); //問題處,有這一行跟沒有這一行竟然是一樣的效果 } 補充說明: 拜過google了,沒找到這樣的狀況 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.223.234.21

07/07 23:39, , 1F
說不定就差在 .10跟 .11 ?
07/07 23:39, 1F

07/08 08:47, , 2F
是有可能,不過查更新紀錄沒有提到這一項
07/08 08:47, 2F

07/08 08:48, , 3F
但這指令用到機率不小,我猜不大可能開發人員沒發現
07/08 08:48, 3F

07/08 08:49, , 4F
我剛找不到其他原因了,先來去抓.11編譯看看好了QQ
07/08 08:49, 4F

07/08 12:07, , 5F
剛剛編譯完.11版試過了 仍有相同問題
07/08 12:07, 5F
※ 編輯: willy69wu31 來自: 163.32.146.168 (07/08 12:10)
文章代碼(AID): #1CD94yEu (C_and_CPP)
文章代碼(AID): #1CD94yEu (C_and_CPP)