Qt stylesheet border-color属性,QFontMetrics Class

2024-02-07 23:18

本文主要是介绍Qt stylesheet border-color属性,QFontMetrics Class,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、border-color

border-color 属性设置四条边框的颜色。此属性可设置 1 到 4 种颜色。

border-color 属性是一个简写属性,可设置一个元素的所有边框中可见部分的颜色,或者为 4 个边分别设置不同的颜色。请看下面的例子:

border-color:red green blue pink;
  • 上边框是红色
  • 右边框是绿色
  • 下边框是蓝色
  • 左边框是粉色
border-color:red green blue;
  • 上边框是红色
  • 右边框和左边框是绿色
  • 下边框是蓝色
border-color:dotted red green;
  • 上边框和下边框是红色
  • 右边框和左边框是绿色
border-color:red;
  • 都为红色边框

二、QTextEdit文字修改行距

QTextDocument *doc =  ui->textEdit_label->document();
QTextCursor textcursor = ui->textEdit_label->textCursor();
for(QTextBlock it = doc->begin(); it !=doc->end();it = it.next())
{QTextBlockFormat tbf = it.blockFormat();tbf.setLineHeight(lineSpacing,QTextBlockFormat::LineDistanceHeight);textcursor.setPosition(it.position());textcursor.setBlockFormat(tbf);ui->textEdit_label->setTextCursor(textcursor);
}

三、想要根据文字字数,适配控件背景长度,所以需要计算字符串个数,以及单个字符宽度

如果程序不支持中文,需要设置编码

QTextCodec *codec = QTextCodec::codecForName("System"); //获取系统编码
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);

int tlength = msg.toLocal8Bit().length();//计算英文字符数

msg="中"  tlength = 2

msg="Qt" tlength = 2

四、Qt 中获取字体的像素高度和宽度

QLabel::fontMetrics().width(QString s): 获取字符串s的总像素宽度。

int QFontMetrics::width ( const QString & text, int len = -1 ) const

Returns the width in pixels of the first len characters of text. If len is negative (the default), the entire string is used.Note that this value is not equal to boundingRect().width(); boundingRect() returns a rectangle describing the pixels this string will cover whereas width() returns the distance to where the next string should be drawn.

See also boundingRect().

返回文本的第一个len字符的宽度(以像素为单位)。如果“len”为负(默认值),则使用整个字符串。
请注意,该值不是等于boundingrect()。width();boundingrect()返回一个矩形,描述该字符串将覆盖的像素,而width()返回应绘制下一个字符串的距离。
另请参见boundingrect()。

QLabel::fontMetrics().height(): 获取字体的高度。

int QFontMetrics::height () const
Returns the height of the font.

This is always equal to ascent()+descent()+1 (the 1 is for the base line).

See also leading() and lineSpacing().

QLabel::fontMetrics().lineSpacing(): 获取字体的高度,包括文字的实际宽度和行距。

int QFontMetrics::lineSpacing () const
Returns the distance from one base line to the next.

This value is always equal to leading()+height().

See also height() and leading().

QLabel::fontMetrics().leading(): 行间距

int QFontMetrics::leading () const
Returns the leading of the font.This is the natural inter-line spacing.

See also height() and lineSpacing().

 

这篇关于Qt stylesheet border-color属性,QFontMetrics Class的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/689220

相关文章

spring中的@MapperScan注解属性解析

《spring中的@MapperScan注解属性解析》@MapperScan是Spring集成MyBatis时自动扫描Mapper接口的注解,简化配置并支持多数据源,通过属性控制扫描路径和过滤条件,利... 目录一、核心功能与作用二、注解属性解析三、底层实现原理四、使用场景与最佳实践五、注意事项与常见问题六

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

Qt QCustomPlot库简介(最新推荐)

《QtQCustomPlot库简介(最新推荐)》QCustomPlot是一款基于Qt的高性能C++绘图库,专为二维数据可视化设计,它具有轻量级、实时处理百万级数据和多图层支持等特点,适用于科学计算、... 目录核心特性概览核心组件解析1.绘图核心 (QCustomPlot类)2.数据容器 (QCPDataC

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati