• 4762阅读
  • 3回复

[讨论]qcombobox 多选功能 [复制链接]

上一主题 下一主题
 

只看楼主 倒序阅读 楼主  发表于: 2015-05-07
回复本帖可获得10RMB金钱奖励!
每人最多可获奖1次,奖池剩余40RMB金钱 (中奖几率10%)
大家帮忙看下代码,现在组合框弹出的列表没有任何内容。感觉是QListWidget调用setItemWidget不成功。


  1.     m_cbbCycle = new QComboBox(this);
  2.     m_cbbCycle->setFixedSize(335, 57);
  3.     m_cycleInput = new QLineEdit(m_cbbCycle);
  4.     m_cycleInput->setObjectName("AlarmClock");
  5.     m_cycleInput->setReadOnly(true);
  6.     connect(m_cycleInput, SIGNAL(textChanged(QString)), this, SLOT(slot_textChanged(QString)));
  7.     m_cbbCycle->setLineEdit(m_cycleInput);
  8.     QListWidget *cycleListWidget = new QListWidget(m_cbbCycle);
  9.     cycleListWidget->setObjectName("AlarmClock");
  10.     m_weekCheckBoxes = new QCheckBox*[7];
  11.     for ( int i = 0; i < 7; i++ )
  12.     {
  13.         QListWidgetItem *listItem = new QListWidgetItem(cycleListWidget);
  14.         listItem->setData(Qt::UserRole, i);
  15.         cycleListWidget->addItem(listItem);
  16.         m_weekCheckBoxes[i] = new QCheckBox(cycleListWidget);
  17.         cycleListWidget->setItemWidget(listItem, m_weekCheckBoxes[i]);
  18.         m_weekCheckBoxes[i]->setObjectName("AlarmClock");
  19.         connect(m_weekCheckBoxes[i], SIGNAL(stateChanged(int)), this, SLOT(slot_cycleCheckBoxSelected()));
  20.     }
  21.     m_cbbCycle->setModel(cycleListWidget->model());
  22.     m_cbbCycle->setView(cycleListWidget);


离线weiweiqiao

只看该作者 1楼 发表于: 2015-05-09
cycleListWidget的model在哪???代码中没有见你赋予model呀。
Jobs Insanely Great.

只看该作者 2楼 发表于: 2015-05-12
回 weiweiqiao 的帖子
weiweiqiao:cycleListWidget的model在哪???代码中没有见你赋予model呀。 (2015-05-09 17:13) 

cycleListWidget->addItem(listItem);这条语句就相当于设置model了,问题不在这里
离线weiweiqiao

只看该作者 3楼 发表于: 2015-05-14
listItem->setData(Qt::UserRole, i);为什么不是Qt::DisplayRole?
Jobs Insanely Great.
快速回复
限100 字节
 
上一个 下一个