前言
最近项目配置udp单播、组播和广播用到带下拉框的复选框,现将实现代码和逻辑分享至此,以供参考和执政
一、主题思想
通过编写继承于QComboBox的MyComboBox类,为该类构造函数传入下拉框内容QStringList实现可多选的的Qt下拉框类,使用是仅需实例化并传参即可实现需求。
二、详细代码
1. 下拉框类
头文件代码如下(示例):
//.h文件
class MyComboBox : public QComboBox
{
Q_OBJECT
public:
MyComboBox(QStringList list);
QListWidget *pListWidget;
QLineEdit *pLineEdit;
bool bSelected;
QString strSelectedText;
signals:
void selectOver();
public slots:
void stateChanged(int state);
void textChanged(const QString &text);
};
源文件代码如下(示例):
//.cpp文件
pListWidget = new QListWidget(this);
pLineEdit = new QLineEdit(this);
for (int i = 1; i <list.length(); ++i)
{
QListWidgetItem *pItem = new QListWidgetItem(pListWidget);
pListWidget->addItem(pItem)