推 Arton0306:感謝!這正是我需要的東西! 12/29 00:43
這個連結可以參考一下
http://developer.qt.nokia.com/doc/qt-4.8/designer-using-custom-widgets.html
簡單講
如果你想要擴充Qt Widget (比方說添加一些member function)
又想要繼續使用Qt Designer拖拉功能
只要在Widget上面按右鍵,選 Promoted widgets. 就行了
※ 引述《Arton0306 (Ar藤)》之銘言:
: 目前寫gui時常遇到一個問題
: 我現在以qt撰寫,用designer畫好ui之後
: 假設現在大視窗中有幾個部份(widget)
: 而某些事件會使得這些widget有些改變或者是widget中的某些地方改變
: 所以function的命名可能會變成下面這樣
: updateCheckedStateInWidgetXXX
: updateCheckedStateInWidgetYYY
: updateCheckedStateInWidgetZZZ
: clear123InWidgetYYY
: clear456InWidgetZZZ
: 也就是說如果不寫Widget名稱,很難看出這個function到底作用在哪個widget
: 加上widget名稱又顯得非常囉嗦
: 比較直覺的寫法應該是
: WidgetXXX->updateCheckedState()
: WidgetYYY->updateCheckedState()
: WidgetZZZ->updateCheckedState()
: WidgetYYY->clear123()
: WidgetZZZ->clear456()
: 但designer直接拉出來的widget沒辦法這樣寫
: 有想過可以自創物件把designer產生的widget ptr傳進去 這樣就可以模擬上方的寫法
: 或者是打從一開始就不要使用designer產生的code
: 請問大家採取的作法是什麼呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.128.54