Qt纯代码实现UI界面

1.相关信息

设置编辑框内容的字体样式,包括加粗、下划线、斜体、蓝色、红色、黑色

2.界面展示

3.相关代码

#include "dialog.h"
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QCheckBox>
#include <QRadioButton>
#include <QPlainTextEdit>
#include <QPushButton>// 下划线
void Dialog::do_chkBoxUnder(bool checked)
{QFont font = txtEdit->font();font.setUnderline(checked);txtEdit->setFont(font);
}// 斜体
void Dialog::do_chkBoxItalic(bool checked)
{QFont font = txtEdit->font();font.setItalic(checked);txtEdit->setFont(font);
}// 加粗
void Dialog::do_chkBoxBold(bool checked)
{QFont font = txtEdit->font();font.setBold(checked);txtEdit->setFont(font);
}// 设置颜色
void Dialog::do_setFontColor()
{QPalette plet = txtEdit->palette();if(radioRed->isChecked()){plet.setColor(QPalette::Text, Qt::red);}else if(radioBlack->isChecked()){plet.setColor(QPalette::Text, Qt::black);}else if(radioBlue->isChecked()){plet.setColor(QPalette::Text, Qt::blue);}txtEdit->setPalette(plet);
}Dialog::Dialog(QWidget *parent): QDialog(parent)
{// 竖布局:字体样式chkBoxUnder = new QCheckBox("下划线");chkBoxItalic = new QCheckBox("斜体");chkBoxBold = new QCheckBox("加粗");QHBoxLayout *HLay1 = new QHBoxLayout();HLay1->addWidget(chkBoxUnder);HLay1->addWidget(chkBoxItalic);HLay1->addWidget(chkBoxBold);// 竖布局:字体颜色radioBlack = new QRadioButton("黑色");radioRed = new QRadioButton("红色");radioBlue = new QRadioButton("蓝色");QHBoxLayout *HLay2 = new QHBoxLayout();HLay2->addWidget(radioBlack);HLay2->addWidget(radioRed);HLay2->addWidget(radioBlue);// 编辑框txtEdit = new QPlainTextEdit();txtEdit->setPlainText("hello world \n 手工创建");QFont font = txtEdit->font();font.setPointSize(20);      // 字体大小txtEdit->setFont(font);// 确认、取消、退出btnOk = new QPushButton("确定");btnCancel = new QPushButton("取消");btnClose = new QPushButton("退出");QHBoxLayout *HLay3 = new QHBoxLayout();HLay3->addStretch();HLay3->addWidget(btnOk);HLay3->addWidget(btnCancel);HLay3->addStretch();HLay3->addWidget(btnClose);QVBoxLayout *VLay = new QVBoxLayout();VLay->addLayout(HLay1);VLay->addLayout(HLay2);VLay->addWidget(txtEdit);VLay->addLayout(HLay3);setLayout(VLay);// 信号与槽connect(chkBoxUnder, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxUnder(bool)));connect(chkBoxItalic, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxItalic(bool)));connect(chkBoxBold, SIGNAL(clicked(bool)), this, SLOT(do_chkBoxBold(bool)));connect(radioRed, SIGNAL(clicked()), this, SLOT(do_setFontColor()));connect(radioBlack, SIGNAL(clicked()), this, SLOT(do_setFontColor()));connect(radioBlue, SIGNAL(clicked()), this, SLOT(do_setFontColor()));connect(btnOk, SIGNAL(clicked()), this, SLOT(accept()));connect(btnCancel, SIGNAL(clicked()), this, SLOT(reject()));connect(btnClose, SIGNAL(clicked()), this, SLOT(close()));setWindowTitle("手工打造UI");}Dialog::~Dialog() {}

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

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

相关文章

commvault学习(5):在linux上安装cv客户端

我的环境&#xff1a; 服务器&#xff08;同时装有CS、MA&#xff09;&#xff1a;windows server2008r2 客户端&#xff1a;两台centos7 1.为两台centos7配置静态ip 使得2者可以与服务器ping通 2.在两台centos7上预留出足够大的磁盘空间以存放安装文件 我是在/mnt下创建了…

软件测试|使用matplotlib绘制箱型图

简介 绘制箱型图&#xff08;Box Plot&#xff09;是一种常用于可视化数据分布的方法&#xff0c;它可以显示数据的中位数、四分位数、异常值等统计信息。Matplotlib 是一个强大的 Python 数据可视化库&#xff0c;可以轻松绘制箱型图。在本文中&#xff0c;我们将介绍如何使用…

推荐五款超好用的AI写作自动生成器给你

随着人工智能技术的不断发展&#xff0c;AI写作自动生成器成为了现代写作的新宠。这些智能工具能够帮助我们快速生成高质量的文章&#xff0c;节省时间和精力。在本文中&#xff0c;我将向大家推荐五款超好用的AI写作自动生成器&#xff0c;希望能够为你的写作工作带来便利和效…

Vue配置语法检查及关闭语法检查的说明

1. 第一种方式&#xff1a;//eslint-disable-next-line 2. 第二种方式&#xff1a;/*eslint-disable*/ 3. 第三种方式&#xff1a;vue.config.js中配置 &#xff0c;具体配置如下&#xff1a; const { defineConfig } require(vue/cli-service)module.exports defineConfig…

服务器数据恢复—OceanStor存储raid5热备盘同步数据失败的数据恢复案例

服务器数据恢复环境&#xff1a; 华为OceanStor某型号存储&#xff0c;存储内有一组由24块硬盘组建的raid5阵列&#xff0c;配置1块热备盘。 服务器故障&#xff1a; 该存储raid5阵列中有一块硬盘离线&#xff0c;热备盘自动激活并开始同步数据&#xff0c;在热备盘同步数据的…

go语言的部分的

设计模式 设计模式1 23种设计模式 为什么需要函数选项模式 package mainimport "fmt"type dbOptions struct {Host stringPort intUserName stringPassword stringDBName string }type Option func(*dbOptions)// WithHost 定义一个函数选项 这个函数主要…

Docker(一)简介和基本概念

一、简介 本章将带领你进入 Docker 的世界。 什么是 Docker&#xff1f; 用它会带来什么样的好处&#xff1f; 好吧&#xff0c;让我们带着问题开始这神奇之旅。 1.什么是 Docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目&…

【文档数据库】ES和MongoDB的对比

目录 1.由文档存储牵出的问题 2.什么是MongoDB&#xff1f; 3.ES和MongoDB的对比 1.由文档存储牵出的问题 本文或者说关于mongodb的这个系列文章的源头&#xff1a; 前面我们聊过了分布式链路追踪系统&#xff0c;在基于日志实现的分布式链路追踪的方式seluthzipkin中为了…

mysql常见的需求,对于关键字的使用

如何使用MySQL将列数据转化为逗号分隔的形式。我们可以使用内置函数GROUP_CONCAT()来实现这个功能 如何使用MySQL将列数据转化为逗号分隔的形式。我们可以使用内置函数GROUP_CONCAT()来实现这个功能&#xff0c;也可以根据实际需求自定义一个函数。这种技术在一些需要对数据进…

Qlib+backtrader:2014.1.1-2023.9.20最新回测结果,可以实盘吗?

今年以来&#xff0c;在研究了qlib和backtrader的基础上&#xff0c;把二者结合起来进行了一个策略研究。简单说就是用qlib在200只股票的股票池中进行滚动训练与预测&#xff08;walk forward&#xff09;&#xff0c;总体数据范围是2005到2023年&#xff0c;以20日间隔滚动训练…

C语言中各变量声明及注意事项

在C语言中&#xff0c;变量的声明语句用于告诉编译器该变量的类型、名称以及存储类型等信息。以下是C语言中常见的变量声明语句及其使用规则&#xff1a; 1. 基本数据类型的声明&#xff1a; 整型&#xff08;int&#xff09;&#xff1a;用于声明整数类型的变量&#xff0c;…

寒假冬令营(算法编程)

1月18日&#xff08;二分&#xff09; 题目描述&#xff08;一&#xff09; 278. 第一个错误的版本 你是产品经理&#xff0c;目前正在带领一个团队开发新的产品。不幸的是&#xff0c;你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的&#xff0…

OpenGL:关于纹理映射时任意四边形中的插值问题(二)

OpenGL&#xff1a;关于纹理映射时任意四边形中的插值问题-CSDN博客 上次是使用逆双线性插值的方法解决四边形纹理映射时产生的折痕问题。 其实也有点问题&#xff0c;就是双线性插值会使得纹理产生一点扭曲。 不是投影的效果。 想达到纹理投影的效果&#xff0c;可以使用透…

CentOS查看修改时间

经常玩docker的朋友应该都知道&#xff0c;有很多的镜像运行起来后&#xff0c;发现容器里的系统时间不对&#xff0c;一般是晚被北京时间8个小时&#xff08;不一定&#xff09;。 这里合理怀疑是镜像给的初始时区是世界标准时间&#xff08;也叫协调世界时间&#xff09;。 有…

C++ 之LeetCode刷题记录(十二)

&#x1f604;&#x1f60a;&#x1f606;&#x1f603;&#x1f604;&#x1f60a;&#x1f606;&#x1f603; 开始cpp刷题之旅。 依旧是追求耗时0s的一天。 69. x 的平方根 示例 1&#xff1a; 输入&#xff1a;x 4 输出&#xff1a;2 示例 2&#xff1a; 输入&#x…

品牌全球化:关于跨界合作的探索与解析

在全球化的时代背景下&#xff0c;品牌出海已经成为企业发展的重要战略之一。然而&#xff0c;面对文化差异、市场竞争和消费者需求等多重挑战&#xff0c;品牌如何成功地打入海外市场&#xff0c;是许多企业面临的难题。跨界合作作为一种新兴的商业模式&#xff0c;正逐渐成为…

JavaSE核心基础-流程语句-笔记

1.键盘录入 import java.util.Scanner&#xff1b; Scanner scanner new Scanner(System.in)&#xff1b; scanner.next()&#xff1b;// 可以得到输入的字符串内容 scanner.nextInt()&#xff1b;// 整型数据 scanner.nextDouble()&#xff1b;// 浮点型数据 2.流程控制语句…

一、Flask学习之HTML

一、Flask学习之HTML 1.运行简单页面 首先需要搭建环境&#xff1a; pip install flaskfrom flask import Flaskapp Flask(__name__)# 创建了网址 /show/info 和函数index之间的对应关系&#xff0c;以后用户在浏览器上访问/show/info&#xff0c;网站自动执行index函数 ap…

HBase学习七:Compaction

1、简介 Compaction是从一个Region的一个Store中选择部分HFile文件进行合并。其目的为了减少 HFile 的个数跟清理掉过期和删除的数据。 合并原理是,先从这些待合并的数据文件中依次读出KeyValue,再由小到大排序后写入一个新的文件。之后,这个新生成的文件就会取代之前已合…

POI和EasyExcel学习

1.POI 1.1POI简介 在Java中&#xff0c;POI是指Apache POI&#xff08;Poor Obfuscation Implementation&#xff09;&#xff0c;它是一个开源的Java库&#xff0c;用于处理Microsoft Office文档格式文件&#xff0c;如Excel、Word、PowerPoint等。POI提供了一组API&#xf…