小编cat*_*red的帖子

使用要存储的额外数据自定义QListWidgetItem,如何?

QListWidgetItem包含2个数据:图标和文本.我想在其中存储另一个QString.我能怎么做?这是我的测试代码.在调用addItem之后,ListWidget不显示任何内容.

我怎么知道点击了哪个项目?SLOT函数是"void on_listWidget_itemClicked(QListWidgetItem*item)".显然,参数项是父类:QListWidgetItem,而不是子类:ListWidgetItem

ListWidgetItem::ListWidgetItem(const QIcon &icon, const QString &text,QString &ip, QListWidget *parent, int type)
{
    myip = ip;
    QListWidgetItem::QListWidgetItem(icon,text,parent,type);
}

ListWidgetItem::~ListWidgetItem()
{

}

QVariant ListWidgetItem::data(int role) const
{
    if (role==IPROLE)
    {
        return myip;
    }
    return QListWidgetItem::data(role);
}

void ListWidgetItem::setData(int role, const QVariant &value)
{
    if (role==IPROLE)
    {
        myip = value.toString();
    }
    QListWidgetItem::setData(role,value);
}
Run Code Online (Sandbox Code Playgroud)

customization qt qlistwidget

5
推荐指数
2
解决办法
8318
查看次数

Qt文件浏览器基于QML

使用QFileSystemModel很容易实现文件浏览器.但是listview UI并不漂亮.所以我想用QML实现一个文件浏览器.QML具有模型/视图支持.但是如何在QML中显示文件系统树?任何线索将不胜感激.

browser filesystems qt qfilesystemmodel qml

5
推荐指数
2
解决办法
8307
查看次数