Qt控件(按钮、单选、复选、list、tree、table)

 一、布局

工具栏图标文字一起显示,背景透明。

 

  二、代码

widget.ui

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>Widget</class><widget class="QWidget" name="Widget"><property name="geometry"><rect><x>0</x><y>0</y><width>800</width><height>600</height></rect></property><property name="windowTitle"><string>Widget</string></property><widget class="QPushButton" name="pushButton"><property name="geometry"><rect><x>20</x><y>10</y><width>75</width><height>23</height></rect></property><property name="text"><string>登录</string></property></widget><widget class="QToolButton" name="toolButton"><property name="geometry"><rect><x>100</x><y>10</y><width>91</width><height>21</height></rect></property><property name="text"><string>工具</string></property><property name="icon"><iconset resource="res.qrc"><normaloff>:/icon/demo01.png</normaloff>:/icon/demo01.png</iconset></property><property name="toolButtonStyle"><enum>Qt::ToolButtonTextBesideIcon</enum></property><property name="autoRaise"><bool>true</bool></property></widget><widget class="QGroupBox" name="groupBox"><property name="geometry"><rect><x>20</x><y>50</y><width>120</width><height>80</height></rect></property><property name="title"><string>性别</string></property><widget class="QRadioButton" name="rBtnMan"><property name="geometry"><rect><x>10</x><y>20</y><width>95</width><height>19</height></rect></property><property name="text"><string>男</string></property></widget><widget class="QRadioButton" name="rBtnWoman"><property name="geometry"><rect><x>10</x><y>50</y><width>95</width><height>19</height></rect></property><property name="text"><string>女</string></property></widget></widget><widget class="QGroupBox" name="groupBox_2"><property name="geometry"><rect><x>170</x><y>50</y><width>120</width><height>54</height></rect></property><property name="title"><string>婚否</string></property><layout class="QHBoxLayout" name="horizontalLayout"><item><widget class="QRadioButton" name="radioButton_4"><property name="text"><string>未婚</string></property></widget></item><item><widget class="QRadioButton" name="radioButton_3"><property name="text"><string>已婚</string></property></widget></item></layout></widget><widget class="QGroupBox" name="groupBox_3"><property name="geometry"><rect><x>320</x><y>20</y><width>100</width><height>141</height></rect></property><property name="title"><string>问卷调查</string></property><layout class="QVBoxLayout" name="verticalLayout"><item><widget class="QCheckBox" name="checkBox_4"><property name="text"><string>价格实惠</string></property></widget></item><item><widget class="QCheckBox" name="checkBox"><property name="text"><string>口感好</string></property></widget></item><item><widget class="QCheckBox" name="checkBox_3"><property name="text"><string>服务到位</string></property></widget></item><item><widget class="QCheckBox" name="cBox"><property name="text"><string>老板好</string></property><property name="tristate"><bool>true</bool></property></widget></item></layout></widget><widget class="QListWidget" name="listWidget"><property name="geometry"><rect><x>480</x><y>20</y><width>256</width><height>171</height></rect></property></widget><widget class="QTreeWidget" name="treeWidget"><property name="geometry"><rect><x>20</x><y>200</y><width>256</width><height>192</height></rect></property><column><property name="text"><string notr="true">1</string></property></column></widget><widget class="QTableWidget" name="tableWidget"><property name="geometry"><rect><x>290</x><y>200</y><width>451</width><height>192</height></rect></property></widget></widget><resources><include location="res.qrc"/></resources><connections/>
</ui>

 widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include<QRadioButton>
#include<QCheckBox>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设置单选按钮 男默认选中ui->rBtnMan->setCheckable(true);//选中女后 打印信息connect(ui->rBtnWoman,&QRadioButton::clicked,[=](){qDebug()<<"选中了女!";});//多选按钮connect(ui->cBox,&QCheckBox::stateChanged,[=](int state){qDebug()<<state;});//利用listWidget写诗QListWidgetItem * item=new QListWidgetItem("锄禾日当午");//将第一行放到listWidget控件中ui->listWidget->addItem(item);//设置居中item->setTextAlignment(Qt::AlignHCenter);//QStringListQStringList list;list<<"锄禾日当午"<<"汗滴禾下土"<<"谁知盘中餐"<<"粒粒皆辛苦?";ui->listWidget->addItems(list);//treeWidget树控件使用//设置水平头ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄介绍");QTreeWidgetItem * liItem=new QTreeWidgetItem(QStringList()<<"力量");QTreeWidgetItem * minItem=new QTreeWidgetItem(QStringList()<<"敏捷");QTreeWidgetItem * zhiItem=new QTreeWidgetItem(QStringList()<<"智力");//追加顶层节点ui->treeWidget->addTopLevelItem(liItem);ui->treeWidget->addTopLevelItem(minItem);ui->treeWidget->addTopLevelItem(zhiItem);//追加自己点QStringList heroL1;heroL1<<"刚被猪"<<"刚被猪刚被猪";QTreeWidgetItem *ll=new QTreeWidgetItem(heroL1);liItem->addChild(ll);//TableWidget控件//设置列数ui->tableWidget->setColumnCount(3);//设置水平表头ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别"<<"年龄");//设置行数ui->tableWidget->setRowCount(5);//设置正文QStringList nameList;nameList<<"亚瑟"<<"赵云"<<"张飞"<<"关羽"<<"花木兰";QStringList sexList;sexList<<"男"<<"男"<<"男"<<"男"<<"女";for(int i=0;i<5;i++){int col=0;ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList.at(i)));ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));}
}Widget::~Widget()
{delete ui;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/416.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ应用场景和集群搭建复习

RabbitMQ应用场景和集群搭建 1. MQ的应用场景1.1 异步处理1.2 应用解耦1.3 流量削峰 2、RabbitMQ集群搭建2.1 普通集群(副本集群)2.1.1 架构图2.1.2 集群搭建1、集群规划&#xff1a;这里用三台虚拟机测试2、克隆三台机器主机名和ip映射3、 在其他两台节点上安装rabbitmq4、后台…

模型实战(13)之YOLOv8实现手语字母检测与识别+权重分享

YOLOv8实现手语字母检测与识别+权重分享 本文借助yolov8 实现手语字母的检测与识别:先检测手的ROI,进而对手语表达的字母含义进行识别全文将从环境搭建、模型训练及预测来展开对整个算法流程进行讲解文中给出了开源数据集链接及从 Roboflow 上的下载教程实现效果如下: 1. 环…

目标检测基础

MTCNN 人脸检测 MTCNN&#xff0c;Multi-task convolutional neural network&#xff08;多任务卷积神经网络&#xff09;&#xff0c;将人脸区域检测与人脸关键点检测放在了一起&#xff0c;它的主题框架类似于cascade。总体可分为P-Net、R-Net、和O-Net三层网络结构。这三个…

如何用ChatGPT使开发效率提高50%以上?

简介 ChatGPT是一个大型语言模型&#xff0c;由OpenAI开发。它被训练用于进行对话式交互&#xff0c;能够理解和生成自然语言文本。ChatGPT可以用于多种任务和场景&#xff0c;包括但不限于&#xff1a;智能助手、创意生成、语言学习、编程辅助等。ChatGPT的优势在于它的广泛知…

【图像处理】基于双目视觉的物体体积测量算法研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

C语言:打印用 * 组成的X形图案

题目&#xff1a; 多组输入一个整数&#xff08;2~20&#xff09;&#xff0c;表示输出的行数&#xff0c;也表示组成“X”的反斜线和正斜线的长度。 思路&#xff1a; 总体思路&#xff1a; 实际打印的是 n*n 的图案&#xff0c; 只不过是当 行等于列(正斜线) 、行列行数-1(反…

io.netty学习(十一)Reactor 模型

目录 前言 传统服务的设计模型 NIO 分发模型 Reactor 模型 1、Reactor 处理请求的流程 2、Reactor 三种角色 单Reactor 单线程模型 1、消息处理流程 2、缺点 单Reactor 多线程模型 1、消息处理流程 2、缺点 主从Reactor 多线程模型 主从Reactor 多线程模型示例 1…

Web自动化元素定位之xpath定位详解

Web自动化常见的定位方式 为什么要学习定位 1.让程序操作指定元素&#xff0c;就必须先找到此元素 2.程序不像人类用眼睛直接定位到元素 webDriver提供了八种定位元素的方式 定位方式总结 1.id、name、class_name、tag_name:根据元素的标签或元素的属性来进行定位 2.link_t…

flask搭建在线音乐网系统

1.使用虚拟环境Virtualenv来创建项目 2. Flask框架介绍 Flask框架是一个用Python编写的轻量级Web应用程序框架&#xff0c;依赖于Werkzeug和Jinja2两个外部库。Werkzeug是一个WSGI工具包&#xff0c;用于接收和处理HTTP请求&#xff0c;匹配视图函数&#xff0c;支持Cookie和会…

Linux :LNMP(源码包安装)

Linux 虚拟机 VMware&#xff1a;安装centos7_鲍海超-GNUBHCkalitarro的博客-CSDN博客 物理机 linux&#xff1a;真机安装centos linux&#xff08;突发事件&#xff1a;解决卡在安装界面&#xff09;{寻找镜像--u启制作--引导u盘--解决卡在安装界面--安装配置}_安装centos7卡…

边缘计算开源平台

边缘计算 文章目录 边缘计算前言01 边缘计算开源平台概述02 面向物联网端的边缘计算开源平台2.1 EdgeXFoundry2.2 ApacheEdgent 03 面向边缘云的边缘计算开源平台3.1 CORD3.2 Akraino EdgeStack 04 面向云边融合的边缘计算开源平台05 构建边缘计算平台的开源软件06 结束语 前言…

PSD笔记

在实际应用中&#xff0c;一个信号我们不可能获得无穷长时间段内的点&#xff0c;对于数字信号&#xff0c;只能通过采样的方式获得N个离散的点。上文提到&#xff0c;实际信号基本上是随机信号&#xff0c;由于不可能对所有点进行考察&#xff0c;我们也就不可能获得其精确的功…