0
我已經習慣了Java和QT/C++的新特性,並且在創建一個QLabel時會遇到一些問題,當人們選擇QListWidgetItem時,它會更改文本。創建監聽QLabel
在我的ui_GraphicsView.h我有setupUI()它使對象。 我試着做一個佈局它的父母。
label = new QLabel(verticalLayout);
label->setObjectName(QString::fromUtf8("label"));
verticalLayout->addWidget(label);
在我的.cpp文件我利用連接在構造函數:
connect(list_widget, SIGNAL(itemSelectionChanged(), this, SLOT(updataDetails())));
updateDetails()在它傳遞一個字符串我的SelectionChanged()方法執行。
void GraphicsView::updateDetails(QString details){
label->setText(details);
}
這導致以下錯誤:
error: no matching function for call to ‘QLabel::QLabel(QVBoxLayout*&)
note: candidates are: QLabel::QLabel(const QLabel&)
note: QLabel::QLabel(const QString&, QWidget*, Qt::WindowFlags)
note: QLabel::QLabel(QWidget*, Qt::WindowFlags)
一切工作之前還有我做了上述調整。任何想法是什麼導致這個錯誤?
好的,我真的不知道什麼樣的widget會是我的parents_widget。通常會是什麼? –
在大多數情況下,父窗口小部件應該是小部件所在的窗口小部件 –
我現在明白了。謝謝! –