[問題] Qt CheckBox 按下去後更改本身的text

看板C_and_CPP (C/C++)作者 (談無慾)時間9年前 (2016/09/22 18:12), 9年前編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VS C++ 2015 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) QT 5.7 問題(Question): 想要手工打造(非QT設計師拉出來的CHECKBOX),,原本CHECKBOX的標籤是"X" 點選之後 標籤要變成"O" 我是看著這個網頁改的 http://monkeycoding.com/?p=168 connect(check1, SIGNAL(clicked()), this, SLOT(changeCheckBox())); 在check1被按下之後 去觸發changeCheckBox這個SLOT 但 void ooxx2::changeCheckBox()裡面不知道要怎樣改 check1的text才可以更改 以下是我的程式碼 ooxx2.h #ifndef OOXX2_H #define OOXX2_H #include <QtWidgets/QMainWindow> #include "ui_ooxx2.h" #include <QCheckBox> class ooxx2 : public QMainWindow { Q_OBJECT public: ooxx2(QWidget *parent = 0); ~ooxx2(); private: QCheckBox *check1; private slots: void changeCheckBox(); private: Ui::ooxx2Class ui; }; #endif // OOXX2_H =================== ooxx2.cpp #include "ooxx2.h" ooxx2::ooxx2(QWidget *parent) : QMainWindow(parent) { ui.setupUi(this); check1 = new QCheckBox(this); check1->setText(tr("開啟對話框")); check1->setGeometry(55, 80, 100, 30); connect(check1, SIGNAL(clicked()), this, SLOT(changeCheckBox())); } ooxx2::~ooxx2() { } void ooxx2::changeCheckBox() { } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.46.82 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1474539148.A.C64.html

09/22 18:31, , 1F
不太懂, 你是要 check1->setText() 嗎
09/22 18:31, 1F

09/22 22:46, , 2F
check1->setText("X");
09/22 22:46, 2F
對 我原本以為是要這樣寫 ui.check1 -> setText("X") 但其實只要 check1->setText("X"); 剛從c#過來還有點一知半解的... 另外用qt design直接拉的 可以這樣寫ui.check1 -> setText("X") 但我完全不懂qt自己幫我做了甚麼... 所以才想要自己手工打造 ※ 編輯: MOONY135 (36.225.51.158), 09/22/2016 23:27:39

09/23 11:23, , 3F
就 QT 會把它建的元件放在 ui 下面而已
09/23 11:23, 3F

09/25 01:35, , 4F
如果懂c++的話,還是建議直接寫程式碼
09/25 01:35, 4F

09/25 19:26, , 5F
我非常同意樓上...
09/25 19:26, 5F
文章代碼(AID): #1NuwwCna (C_and_CPP)
文章代碼(AID): #1NuwwCna (C_and_CPP)