• Qt QListWidget


    以下代码是 List Widget 添加数据项的代码,一般放在构造函数即可。

    /*********************添加数据项*********************/
        QIcon icon1("C:\Users\Administrator.USER-20190313RI\Desktop\img\book.png");
        QListWidgetItem* item = new QListWidgetItem(icon1, "book");
        // 设置关联数据
        item->setData(Qt::UserRole, 1);
        item->setData(Qt::ToolTipRole, "this is tooltip!");
        ui.listWidget->addItem(item);
    
        QIcon icon2("C:\Users\Administrator.USER-20190313RI\Desktop\img\heart.png");
        ui.listWidget->addItem(new QListWidgetItem(icon2, "heart"));
        QIcon icon3("C:\Users\Administrator.USER-20190313RI\Desktop\img\location.png");
        ui.listWidget->addItem(new QListWidgetItem(icon3, "location"));

    以下是切换List Widget视图,删除现行选中项,获取关联数据的代码。

    // 切换视图按钮点击事件处理函数
    void ListWidget::ViewModeClick()
    {
        if (ui.listWidget->viewMode() == QListView::ListMode)
        {
            ui.listWidget->setViewMode(QListView::IconMode);
        }
        else
        {
            ui.listWidget->setViewMode(QListView::ListMode);
        }
    }
    
    // 移除按钮点击事件处理函数
    void ListWidget::RemoveClick()
    {
        // 获取当前选中项
        int row = ui.listWidget->currentRow();
        // 移除当前选中项
        QListWidgetItem* item = ui.listWidget->takeItem(row);
        if (item)
        {
            delete item;
        }
    
    }
    
    // 双击条目获取关联数据
    void ListWidget::OnItemDBClick(QListWidgetItem* item)
    {
        // QMessageBox::information(this, "SSS", item->text());
        int value = item->data(Qt::UserRole).toInt();
        QString str = item->data(Qt::ToolTipRole).toString();
        qDebug() << value << endl;
        qDebug() << str << endl;
    }
  • 相关阅读:
    python常见报错解释
    selenium键盘操作
    html常用属性,标签,选择器
    模块(三)
    类的继承
    java接口
    java新建文件夹中的绝对路径和相对路径的理解以及中文乱码问题
    Java IO
    JS中的排序算法(-)冒泡排序
    CSS+DIV布局中absolute和relative的区别
  • 原文地址:https://www.cnblogs.com/duxie/p/11758656.html
Copyright © 2020-2023  润新知