当前位置: 首页 > news >正文

iis网站权限设置全国分站seo

iis网站权限设置,全国分站seo,上海建设网站是国家级吗,网站什么时候恢复彩色继承ComboBox完成下拉复选框 自定义全选项 效果图 整个控件继承于QCombobox类。主要修改QLineEdit、QListWidget这两部分#xff0c;QComboBox提供如下接口#xff0c;可以将这两部分设置为新建的QLineEdit、QListWidget对象 CMultiSelectComboBox::CMultiSelectComboBo…继承ComboBox完成下拉复选框 自定义全选项 效果图 整个控件继承于QCombobox类。主要修改QLineEdit、QListWidget这两部分QComboBox提供如下接口可以将这两部分设置为新建的QLineEdit、QListWidget对象 CMultiSelectComboBox::CMultiSelectComboBox(QWidget* parent, bool bHasAllSelected): QComboBox(parent), m_bHasAllSelected(bHasAllSelected) {m_pListWidget new QListWidget();m_pLineEdit new QLineEdit();m_pLineEdit-setReadOnly(true);setModel(m_pListWidget-model());setView(m_pListWidget);setLineEdit(m_pLineEdit);m_pLineEdit-installEventFilter(this);if (m_bHasAllSelected){AddItem(TransString2Unicode(全选), ALL_SELECTED);} }完整代码 /* ** File name: MultiSelectComboBox.h ** Author: ** Date: 2024-12-26 ** Brief: 多选下拉框控件 ** Copyright (C) 1392019713qq.com All rights reserved. */#pragma once#include QComboBox #include QListWidget #include QLineEdit #include QVariant #include QEvent #include QtGuiExportLib.hclass QTGUI_EXPORT CMultiSelectComboBox : public QComboBox { public:/** brief 构造函数* param parent 父控件* param bHasAllSelected 是否显示全选选项*/explicit CMultiSelectComboBox(QWidget* parent nullptr, bool bHasAllSelected false);virtual ~CMultiSelectComboBox() default;/** brief 设置是否显示全选选项 需在设置数据前调用* param bHasAllSelected 是否显示全选选项*/void SetHasAllSelected(bool bHasAllSelected true);void AddItem(const QString qstrItem, const QVariant rVar QVariant());void RemoveItem(const QVariant rVar);void ClearItems();QListQVariant GetSelectedItemDatas() const;QString GetCurrentText() const;protected:virtual bool eventFilter(QObject* pObj, QEvent* pEvent) override;private:void SetSelectedCheckState(int nState);void SetAllSelected(bool bChecked);int GetCheckedCount() const;private Q_SLOTS:void SlotItemStateChanged(int);void SlotItemClicked(int nIndex);void SlotChecBoxClicked();private:bool m_bHasAllSelected;QListWidget* m_pListWidget;QLineEdit* m_pLineEdit; }; #include ../Include/MultiSelectComboBox.h #include ../Include/Conversion.h #include QCheckBox #include QDebug#define ALL_SELECTED ALL_SELECT CMultiSelectComboBox::CMultiSelectComboBox(QWidget* parent, bool bHasAllSelected): QComboBox(parent), m_bHasAllSelected(bHasAllSelected) {m_pListWidget new QListWidget();m_pLineEdit new QLineEdit();m_pLineEdit-setReadOnly(true);setModel(m_pListWidget-model());setView(m_pListWidget);setLineEdit(m_pLineEdit);m_pLineEdit-installEventFilter(this);if (m_bHasAllSelected){AddItem(TransString2Unicode(全选), ALL_SELECTED);} }void CMultiSelectComboBox::SetHasAllSelected(bool bHasAllSelected) {if (bHasAllSelected){AddItem(TransString2Unicode(全选), ALL_SELECTED);}else{RemoveItem(ALL_SELECTED);}m_bHasAllSelected bHasAllSelected; }void CMultiSelectComboBox::AddItem(const QString qstrItem, const QVariant rVar) {QListWidgetItem* pItem new QListWidgetItem(m_pListWidget);QCheckBox* pCheckBox new QCheckBox();pCheckBox-setText(qstrItem);pItem-setData(Qt::UserRole, rVar);m_pListWidget-addItem(pItem);m_pListWidget-setItemWidget(pItem, pCheckBox);connect(pCheckBox, QCheckBox::stateChanged, this, CMultiSelectComboBox::SlotItemStateChanged);connect(pCheckBox, QCheckBox::clicked, this, CMultiSelectComboBox::SlotChecBoxClicked); }void CMultiSelectComboBox::RemoveItem(const QVariant rVar) {for (int i 0; i m_pListWidget-count(); i){QListWidgetItem* pItem m_pListWidget-item(i);if (!pItem){continue;}if (pItem-data(Qt::UserRole) rVar){QWidget* pWidget m_pListWidget-itemWidget(pItem);QCheckBox* pCheckBox qobject_castQCheckBox*(pWidget);if (pCheckBox){delete pCheckBox;}m_pListWidget-removeItemWidget(pItem);m_pListWidget-takeItem(i);delete pItem;break;}} }void CMultiSelectComboBox::ClearItems() {m_pListWidget-clear();m_pLineEdit-clear(); }QListQVariant CMultiSelectComboBox::GetSelectedItemDatas() const {QListQVariant lstVars;int i 0;if (m_bHasAllSelected){i 1;}for (; i m_pListWidget-count(); i){QListWidgetItem* pItem m_pListWidget-item(i);if (!pItem){continue;}QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(pItem));if (!pCheckBox){continue;}if (pCheckBox-isChecked()){QVariant rVar pItem-data(Qt::UserRole);if (rVar.isValid()){lstVars.append(rVar);}}}return lstVars; }QString CMultiSelectComboBox::GetCurrentText() const {if (!m_pLineEdit){return QString();}return m_pLineEdit-text(); }bool CMultiSelectComboBox::eventFilter(QObject* pObj, QEvent* pEvent) {if (pObj m_pLineEdit){if (pEvent-type() QEvent::MouseButtonPress){showPopup();return true;}}return false; }void CMultiSelectComboBox::SetSelectedCheckState(int nState) {for (int i 0; i m_pListWidget-count(); i){QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(m_pListWidget-item(i)));if (!pCheckBox){continue;}if (pCheckBox-isChecked()){pCheckBox-setCheckState(Qt::CheckState(nState));}} }void CMultiSelectComboBox::SetAllSelected(bool bChecked) {for (int i 0; i m_pListWidget-count(); i){QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(m_pListWidget-item(i)));if (!pCheckBox){continue;}pCheckBox-setChecked(bChecked);} }int CMultiSelectComboBox::GetCheckedCount() const {int i 0;if (m_bHasAllSelected){i 1;}int nCount 0;for (; i m_pListWidget-count(); i){QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(m_pListWidget-item(i)));if (!pCheckBox){continue;}if (pCheckBox-isChecked()){nCount;}}return nCount; }void CMultiSelectComboBox::SlotItemClicked(int nIndex) {QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(m_pListWidget-item(nIndex)));if (!pCheckBox){return;}if (m_bHasAllSelected nIndex 0){SetAllSelected(pCheckBox-isChecked());}else if(!m_bHasAllSelected){pCheckBox-setChecked(pCheckBox-isChecked());}else {pCheckBox-setChecked(pCheckBox-isChecked());int nCheckedCount GetCheckedCount();if (nCheckedCount 0){SetAllSelected(false);}else if (nCheckedCount m_pListWidget-count() - 1){SetSelectedCheckState(Qt::PartiallyChecked);}else{SetAllSelected(true);}} }void CMultiSelectComboBox::SlotChecBoxClicked() {int nIndex 0;QCheckBox* pCheckBox qobject_castQCheckBox*(sender());if (!pCheckBox){return;}for (int i 0; i m_pListWidget-count(); i){if (m_pListWidget-itemWidget(m_pListWidget-item(i)) pCheckBox){nIndex i;break;}}SlotItemClicked(nIndex); }void CMultiSelectComboBox::SlotItemStateChanged(int nState) {QString qstrText;int i 0;if (m_bHasAllSelected){i 1;}for (; i m_pListWidget-count(); i){QCheckBox* pCheckBox qobject_castQCheckBox*(m_pListWidget-itemWidget(m_pListWidget-item(i)));if(!pCheckBox){continue;}if (pCheckBox-isChecked()){qstrText pCheckBox-text() TransString2Unicode(、);}}qstrText.chop(1);m_pLineEdit-setText(qstrText);m_pLineEdit-setToolTip(qstrText); }使用示例 可以提升控件也可以直接new 提升 ui-comboBox-SetHasAllSelected(true);ui-comboBox-AddItem(Sine Wave, 1);ui-comboBox-AddItem(Random Data, 2);ui-comboBox-AddItem(Custom Data, 3);ui-comboBox-AddItem(Custom Data 2, 4);ui-comboBox-RemoveItem(1);如果此文帮助到你动动小手点个赞可好 。
http://www.hkea.cn/news/14559587/

相关文章:

  • 北京双诚建设监理公司网站私人做网站建设
  • 电脑网站编程Python 查询网站开发
  • wordpress替换百度站内搜索不需要丢链接可以百度收录的网站
  • 公司展示网站模板网站架构方案
  • 佛山企业网站建设技术设计机构
  • 北京工程质量建设协会网站wordpress口腔主题
  • 珠海做网站价格创保网app下载
  • 网站建设与制作教学计划网络推广公司盈利模式
  • 人才网站淘宝网页版手机版
  • 怎么搭建自己公司网站上海华东民航机场建设公司网站
  • 提供网站制作公司电话游戏网站建设方案
  • 成都网站建设cdsqywl代做ppt的网站
  • 网站做优化是什么意思品牌营销全案策划
  • 台州企业网站建设公司建筑工程培训有哪些
  • 网站开发人员叫什么sem优化师
  • 苏宁网站开发人员工资红网
  • 网站推广做那个较好呢专为男人做的网站
  • 正规网站建设多少钱电商app开发定制大概多少钱
  • 合肥大型网站安防监控网站模板
  • 做么网站有黄做网站上传照片的尺寸
  • 做字体网站用wordpress设计html
  • 网站建立公司四川wordpress怎安装
  • 成都市那里有网站建设制作公司网站建设实训指导书
  • 化妆网站模板哪些做任务可以赚钱的网站
  • 服装网站建设案例分析企业安全文化建设中的安全承诺是指
  • 深圳网站制作首选灵点网络新网站 百度推广
  • frontpage怎么做网站网站建设需要些什么软件
  • 建设银行成都 招聘网站加强网站安全建设
  • 网站自己怎么做直播小蘑菇网站建设软件
  • 合肥做网站排名17zwd com一起做网店