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

做购物平台网站 民治云南哪里可以制作自己的网页

做购物平台网站 民治,云南哪里可以制作自己的网页,搜索网站排名,php网站超市源码文章目录 1. 实例简介2. 源码2.1 混合式界面设计2.2 mainwindow.h2.3 mainwindow.cpp 1. 实例简介 Qt 中用于项 (Item)处理的组件有两类#xff0c;一类是 Item Views#xff0c;包括 QListView、QTreeView、QTableView、QColumnView 等;另一类是 Item Widgets#xff0c;包… 文章目录 1. 实例简介2. 源码2.1 混合式界面设计2.2 mainwindow.h2.3 mainwindow.cpp 1. 实例简介 Qt 中用于项 (Item)处理的组件有两类一类是 Item Views包括 QListView、QTreeView、QTableView、QColumnView 等;另一类是 Item Widgets包括 QListWidget、QTreeWidget 和QTableWidget。 Item Views 基于模型/视图(Model/Vicw)结构视图 (View)与模型数据(Model Data)关联实现数据的显示和编辑模型/视图结构的使用在第5 章详细介绍。 Item Widgets 是直接将数据存储在每一个项里例如QListWidget 的每一行是一个项QTreeWidget 的每个节点是一个项QTableWidget 的每一个单元格是一个项。一个项存储了文字文字的格式、自定义数据等。 Item Widgets 是GUI 设计中常用的组件本节通过实例 samp4_7 先介绍 QListWidget 以及其他一些组件的用法实例运行时界面如图 4-8 所示。 本实例不仅介绍QListWidget 的使用还包括如下一些功能的实现。 使用QTabWidget 设计多页界面工作区右侧就是一个具有 3 个页面的 TabWidget 组件。使用QToolBox 设计多组工具箱工作区左侧是一个有 3 个组的 TolBox 组件。使用分隔条(QSplitter) 设计可以左右分割的界面工作区的 TolBox 和 TabWidget 之间有一个 splitter运行时可以分割调整两个组件的大小。创建Actions用Actions 设计主工具栏用Action 关联 QToolButton 按钮。使用 QToolButton 按钮设置与 Action 关联设计具有下拉菜单功能的 ToolButton 按钮在主工具栏上添加具有下拉菜单的 ToolButton 按钮。使用 QListWidget演示如何创建和添加项为项设置图标和复选框如何遍历列表进行选择。QListWidget的主要信号currentItemChanged()的功能编写响应槽函数。为QListWidget 组件利用已设计的 Actions 创建自定义快捷菜单。 关于上述提到详细的请参考源码及书籍 2. 源码 2.1 混合式界面设计 2.2 mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include QMainWindow #include QListWidgetItemnamespace Ui { class MainWindow; }class MainWindow : public QMainWindow {Q_OBJECTprivate:void setActionsForButton();void createSelectionPopMenu(); public:explicit MainWindow(QWidget *parent 0);~MainWindow();private slots:void on_actListClear_triggered(); //清除项void on_actListIni_triggered(); //项初始化void on_chkBoxListEditable_clicked(bool checked); //chkBoxListEditable单击事件//当前选择项发生变化void on_listWidget_currentItemChanged(QListWidgetItem *current, QListWidgetItem *previous);void on_actListInsert_triggered(); //插入项void on_actListAppend_triggered(); //添加项void on_actListDelete_triggered(); //删除当前项void on_listWidget_customContextMenuRequested(const QPoint pos); //弹出菜单void on_toolBox_currentChanged(int index); //ToolBox当前组变化时显示TabWidget相应的页面void on_actSelALL_triggered(); //全选void on_actSelNone_triggered();//全不选void on_actSelInvs_triggered();//反选private:Ui::MainWindow *ui; };#endif // MAINWINDOW_H 2.3 mainwindow.cpp #include mainwindow.h #include ui_mainwindow.h #include QMenuvoid MainWindow::setActionsForButton() {//为QToolButton按钮设置Actionui-tBtnListIni-setDefaultAction(ui-actListIni);ui-tBtnListClear-setDefaultAction(ui-actListClear);ui-tBtnListInsert-setDefaultAction(ui-actListInsert);ui-tBtnListAppend-setDefaultAction(ui-actListAppend);ui-tBtnListDelete-setDefaultAction(ui-actListDelete);ui-tBtnSelALL-setDefaultAction(ui-actSelALL);ui-tBtnSelNone-setDefaultAction(ui-actSelNone);ui-tBtnSelInvs-setDefaultAction(ui-actSelInvs); }void MainWindow::createSelectionPopMenu() { //创建下拉菜单QMenu* menuSelectionnew QMenu(this); //创建选择弹出式菜单menuSelection-addAction(ui-actSelALL);menuSelection-addAction(ui-actSelNone);menuSelection-addAction(ui-actSelInvs);//listWidget上方的tBtnSelectItem按钮ui-tBtnSelectItem-setPopupMode(QToolButton::MenuButtonPopup);//菜单弹出模式执行按钮的Actionui-tBtnSelectItem-setToolButtonStyle(Qt::ToolButtonTextBesideIcon); //按钮样式ui-tBtnSelectItem-setDefaultAction(ui-actSelPopMenu);//关联Actionui-tBtnSelectItem-setMenu(menuSelection); //设置下拉菜单//工具栏上的 下拉式菜单按钮QToolButton *aBtnnew QToolButton(this);aBtn-setPopupMode(QToolButton::InstantPopup);//buttons own action is not triggered.aBtn-setToolButtonStyle(Qt::ToolButtonTextUnderIcon);//按钮样式aBtn-setDefaultAction(ui-actSelPopMenu); //设置Action,获取图标、标题等设置aBtn-setMenu(menuSelection);//设置下拉菜单ui-mainToolBar-addWidget(aBtn); //工具栏添加按钮//工具栏添加分隔条和“退出”按钮ui-mainToolBar-addSeparator();ui-mainToolBar-addAction(ui-actQuit); }MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow) {ui-setupUi(this);setCentralWidget(ui-splitter); //设置中心组件setActionsForButton();createSelectionPopMenu(); }MainWindow::~MainWindow() {delete ui; }void MainWindow::on_actListClear_triggered() {ui-listWidget-clear(); //清除项 }void MainWindow::on_actListIni_triggered() { //初始化项QListWidgetItem *aItem; //每一行是一个QListWidgetItemQIcon aIcon;aIcon.addFile(:/images/icons/check2.ico); //设置ICON的图标bool chkui-chkBoxListEditable-isChecked();//是否可编辑ui-listWidget-clear(); //清除项for (int i0; i10; i){QString strQString::asprintf(Item %d,i);aItemnew QListWidgetItem(); //新建一个项aItem-setText(str); //设置文字标签aItem-setIcon(aIcon);//设置图标aItem-setCheckState(Qt::Checked); //设置为选中状态if (chk) //可编辑, 设置flagsaItem-setFlags(Qt::ItemIsSelectable | Qt::ItemIsEditable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);else//不可编辑, 设置flagsaItem-setFlags(Qt::ItemIsSelectable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);ui-listWidget-addItem(aItem); //增加一个项} }void MainWindow::on_chkBoxListEditable_clicked(bool checked) { //可编辑 QCheckBox的响应代码 设置所有项是否可编辑int i,cnt;QListWidgetItem *aItem;cntui-listWidget-count();//项的个数for (i0; icnt; i){aItemui-listWidget-item(i);//获得一个项if (checked) //可编辑aItem-setFlags(Qt::ItemIsSelectable | Qt::ItemIsEditable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);elseaItem-setFlags(Qt::ItemIsSelectable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);}}void MainWindow::on_listWidget_currentItemChanged(QListWidgetItem *current, QListWidgetItem *previous) { //listWidget当前选中项发生变化QString str;if (current ! NULL) //需要检测变量指针是否为空{if (previousNULL) //需要检测变量指针是否为空str当前current-text();elsestr前一项previous-text(); 当前项current-text();ui-editCutItemText-setText(str);} }void MainWindow::on_actListInsert_triggered() { //插入一个项QIcon aIcon;aIcon.addFile(:/images/icons/check2.ico); //图标bool chkui-chkBoxListEditable-isChecked(); //是否可比那几QListWidgetItem* aItemnew QListWidgetItem(New Inserted Item); //创建一个项aItem-setIcon(aIcon);//设置图标aItem-setCheckState(Qt::Checked); //设置为checkedif (chk) //设置标记aItem-setFlags(Qt::ItemIsSelectable | Qt::ItemIsEditable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);elseaItem-setFlags(Qt::ItemIsSelectable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);ui-listWidget-insertItem(ui-listWidget-currentRow(),aItem); //在当前行的上方插入一个项}void MainWindow::on_actListAppend_triggered() {//增加一个项QIcon aIcon;aIcon.addFile(:/images/icons/check2.ico); //设定图标bool chkui-chkBoxListEditable-isChecked();//是否可编辑QListWidgetItem* aItemnew QListWidgetItem(New Added Item); //创建一个ItemaItem-setIcon(aIcon); //设置图标aItem-setCheckState(Qt::Checked); //设置为checkedif (chk) //设置标志aItem-setFlags(Qt::ItemIsSelectable | Qt::ItemIsEditable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);elseaItem-setFlags(Qt::ItemIsSelectable |Qt::ItemIsUserCheckable |Qt::ItemIsEnabled);ui-listWidget-addItem(aItem);//增加一个项}void MainWindow::on_actListDelete_triggered() { //删除当前项int rowui-listWidget-currentRow();//当前行QListWidgetItem* aItemui-listWidget-takeItem(row); //移除指定行的项但不deletedelete aItem; //需要手工删除对象// QListWidgetItem *QListWidget::takeItem(int row) // Removes and returns the item from the given row in // the list widget; otherwise returns 0. // Items removed from a list widget will not be managed by Qt, // and will need to be deleted manually. }void MainWindow::on_listWidget_customContextMenuRequested(const QPoint pos) {Q_UNUSED(pos);QMenu* menuListnew QMenu(this); //创建菜单//添加Actions创建菜单项menuList-addAction(ui-actListIni);menuList-addAction(ui-actListClear);menuList-addAction(ui-actListInsert);menuList-addAction(ui-actListAppend);menuList-addAction(ui-actListDelete);menuList-addSeparator();menuList-addAction(ui-actSelALL);menuList-addAction(ui-actSelNone);menuList-addAction(ui-actSelInvs);menuList-exec(QCursor::pos()); //在鼠标光标位置显示右键快捷菜单delete menuList; //手工创建的指针必须手工删除 }void MainWindow::on_toolBox_currentChanged(int index) {ui-tabWidget-setCurrentIndex(index);//ToolBox当前页与tabWidget的当前页联动 }void MainWindow::on_actSelALL_triggered() { //项全选int cntui-listWidget-count();//项个数for (int i0; icnt; i){QListWidgetItem *aItemui-listWidget-item(i);//获取一个项aItem-setCheckState(Qt::Checked);//设置为选中} }void MainWindow::on_actSelNone_triggered() { //全不选int i,cnt;QListWidgetItem *aItem;cntui-listWidget-count();//项个数for (i0; icnt; i){aItemui-listWidget-item(i);//获取一个项aItem-setCheckState(Qt::Unchecked);//不选} }void MainWindow::on_actSelInvs_triggered() {//反选int i,cnt;QListWidgetItem *aItem;cntui-listWidget-count();//项个数for (i0; icnt; i){aItemui-listWidget-item(i);//获取一个项if (aItem-checkState()!Qt::Checked)aItem-setCheckState(Qt::Checked);elseaItem-setCheckState(Qt::Unchecked);}}
http://www.hkea.cn/news/14396630/

相关文章:

  • 做招聘的网站建设银行网站诚聘英才
  • 怎么注册网站个人专业建站公司建站系统
  • 郑州哪里有做网站网上怎么找客户资源
  • 网站+做+apptk免费域名注册网站
  • 深圳网站建设推进如何创建自己的公司
  • 防伪网站建设网页制作处理软件中的三剑客是指
  • 网站模版参考无锡设计公司排名
  • 南通网站排名服务谷歌paypal官网登录入口
  • 潍坊网站关键字优化js搜索网站开发
  • 自助建站系统官方版深圳建站公司企业
  • 温州外贸公司网站建设公司排名做网站视频背景
  • 用户体验的互动展示网站产品推广网站设计
  • 网站建设与维护 实验报告心得织梦做网站好不好
  • 做网站公司松江旺道seo软件
  • 微信怎么制作自己的公众号大丰seo排名
  • 网站建设经费申请wordpress 大气主题
  • 网站和公众号的区别是什么网店运营包括哪些
  • m导航网站如何做淘宝客网站维护费一般多少钱
  • 怎样在网站图片上做店铺广告网站下载器
  • 有什么展厅设计做的好的网站南充做网站电话
  • 自己建一个网站难吗专门做捷径网站
  • 网站建设合同司法解释怎么用手机做网站教程
  • 比分网站怎么做承德seo
  • 漯河北京网站建设西部数码网站备案查询
  • dw建设个人网站步骤中企动力上班怎么样
  • 雄县网站建设海淀区网站建设公司
  • 全站flash网站网站认证收费
  • 达州建设机械网站企业微信网站开发文档
  • 任何网站都可以做谷歌推广的吗做网站用什么格式做好
  • 一般网站字体大小软件开发培训学校三八妇女节