问题描述
我正在使用QTreeWidgetItem
和QTreeWidgetItem
构建一个小型应用程序,以练习它们以及练习如何最好地使用它们。这是一个小型应用程序,我正在其中尝试使用辅助功能将图标分配给QTreeWidget
。
现在由于某些原因,我得到以下错误:
no matching conversion for functional-style cast from 'const QString' to 'QTreeWidgetItem'
,
代码下方:
mainwindow.h
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
QTreeWidgetItem *createItem(const QString &name,const QString &iconPath);
QString name() const {
return m_Name;
}
QString iconPath() const {
return m_Path;
}
void setName(const QString &name)
{
m_Name = name;
}
void setPath(const QString &path)
{
m_Path = path;
}
private:
Ui::MainWindow *ui;
QString m_Name;
QString m_Path;
};
mainwindow.cpp
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent),ui(new Ui::MainWindow)
{
ui->setupUi(this);
auto *top1 = createItem("Images","/path/to/icon.png");
auto *top2 = createItem("Path","/path/to/icon.png");
top1->addChild(createItem("Original","/path/to/icon.png"));
top1->addChild(createItem("Sample","/path/to/icon.png"));
top2->addChild(createItem("Left Side","/path/to/icon.png"));
top2->addChild(createItem("Right Side","/path/to/icon.png"));
ui->treeWidget->addTopLevelItems({ top1,top2 });
}
MainWindow::~MainWindow()
{
delete ui;
}
QTreeWidgetItem *MainWindow::createItem(const QString &name,const QString &iconPath)
{
auto *item = QTreeWidgetItem(name); // <-- Error Here
item.setIcon(0,QIcon(iconPath));
return item;
}
现在这是一个编译器错误,似乎构造函数缺少QTreeWidgetItem
,因此使我无法使用我创建的帮助函数来帮助我定义小图标的名称和路径。
我研究了这个问题,发现了this source,还读了additional source。
感谢您帮助我阐明这个问题。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)