0
我正在學習Qt 5的一些web示例代碼,但我無法編譯它。我有幾個文件,如:在mainwindow.h ,我有我的代碼:QT 5 connect()函數連接文本編輯器和MainWindow
class MainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
QTextEdit *textEdit;
};
類的實現是在mainwindow.cpp,作爲
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
setWindowTitle("TextPad [*]");
textEdit = new QTextEdit(this);
setCentralWidget(textEdit);
connect(textEdit,&QTextEdit::textChanged,this,this->setWindowModified(true));
}
在我main.cpp中,這是很簡單的,因爲
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MainWindow window;
window.show();
return app.exec();
}
我想要做的是有一個以「*」的窗口標題,如果我改變了文本編輯文本,所以我用一個connect()函數。問題我不能正確編譯它,錯誤信息是
error: invalid use of void expression
connect(textEdit,&QTextEdit::textChanged,this,this->setWindowModified(true));
任何幫助表示讚賞!
謝謝,我應用了你的第二種方法,它能正常工作。代碼中只有一個錯字,但從編譯中很容易找到。 – zhoudingjiang
@zhoudingjiang - 對不起,錯字。我目前無法訪問Qt,所以無法編譯。現在修好了嗎? – owacoder
是的,非常感謝。 – zhoudingjiang