【问题标题】:how to send data as hidden to QComboBOX in pyqt如何在pyqt中将数据隐藏发送到QComboBOX
【发布时间】:2013-09-25 14:21:53
【问题描述】:

我需要将nameid 发送到QComboBox,但我想发送show name 并且因为id 在dB 表中是id,我想保持隐藏id,但我不知道如何隐藏id。 我可以这样命名:

self.comboBox_2.addItems(list1)

但我对隐藏数据一无所知。

我的问题是,如何将隐藏的数据发送到QComboBox

【问题讨论】:

    标签: c++ python qt pyqt qcombobox


    【解决方案1】:

    如果您有一个基于 QAbstractItemModel 的数据模型,其中包含“id”和“name”列,您可以这样做:

    enum Columns
    {
        COL_ID,
        COL_NAME
    }
    
    QComboBox *combo = new QComboBox;
    combo->setModel(model);
    combo->setModelColumn(COL_NAME)
    

    如果您想将项目一个一个地添加到组合框中,请执行以下操作:

    QComboBox *combo = new QComboBox;
    combo->addItem(name, id);
    

    然后您可以使用以下命令从组合框项中检索 id 值:

    QString id = combo->itemData(index, Qt::UserRole).toString();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      • 1970-01-01
      • 2019-01-04
      • 2015-05-22
      • 2012-01-15
      • 1970-01-01
      相关资源
      最近更新 更多