在我的程序中,我有一系列选项卡,每个选项卡上都有一个组合框和一个QListWidget。根据组合框上的选择,将填充QListWidget。
现在,我试图实现的是,用户在combobox中为给定的选择选择了"checkable“列表小部件上的一系列项之后,按下一个"APPLY”按钮,我将使用指向列表小部件的指针QListWidgetItem指针来读取列表小部件上每个项的bool状态。
这是我代码的一部分;
void MainWindow::on_applyButton_clicked()
{
//Reset list
MainWindow::revenueList.clear();
//Processing income statement
//Select the first item on inc_st_combo
ui->inc_st_comb->setCurrentText("Revenue Growth");
//Create an iterator
QStringListIterator iter(MainWindow::revenue_labels);
//Loop through the list widget and read bool status
while(iter.hasNext())
{
//Index for the QList
int index = 0;
//Create a QListWidgetItem pointer
QListWidgetItem *listItem = new QListWidgetItem(iter.next(),Ui_MainWindow::inc_st_list);
bool status = listItem->checkState();
qDebug() << "Status: " << status << endl;
MainWindow::revenueList.append(status);
}
qDebug() << "List: " << MainWindow::revenueList << endl;
}我的问题是,当我试图初始化下面一行的QLsitWidgetItem时;
QListWidgetItem \*listItem = new QListWidgetItem(iter.next(),Ui\_MainWindow::inc\_st\_list);
Qt返回以下错误;
/Users/Vino/Documents/My Stuff/Qt Projects/Fundemental Analysis/FundementalAnalysis/mainwindow.cpp:389: error: invalid use of non-static data member 'inc_st_list' QListWidgetItem *listItem = new QListWidgetItem(iter.next(),Ui_MainWindow::inc_st_list); ~~~~~~~~~~~~~~~^~~~~~~~~~~
如何初始化QListWidgetItem指针以指向窗体上的特定listWidget?
发布于 2017-02-23 09:59:04
如果要指向不使用new的已存在对象的指针,则需要将现有对象的地址分配给它:
int pos = 0; //determine the right position
QListWidgetItem *listItem = ui->inc_st_list->item(pos);https://stackoverflow.com/questions/42412130
复制相似问题