解决Qt设置QTextEdit行高的问题
解决方法:
QTextDocument* doc = ui->edtCountryIntroduce->document();
for(QTextBlock it = doc->begin(); it != doc->end(); it = it.next())
{
QTextCursor textCursor(it);
QTextBlockFormat textBlockFormat = it.blockFormat();
//set line height
textBlockFormat.setLineHeight(24,QTextBlockFormat::FixedHeight);
textCursor.setBlockFormat(textBlockFormat);
ui->edtCountryIntroduce->setTextCursor(textCursor);
}
需要在QTextEdit设置了文字之后,才会生效,放在构造函数里不会生效
像这样是不行的
QTextCursor textCursor = ui->textEdit->textCursor();
QTextBlockFormat textBlockFormat;
//set line height
textBlockFormat.setLineHeight(24,QTextBlockFormat::FixedHeight);
textCursor.setBlockFormat(textBlockFormat);
ui->textEdit->setTextCursor(textCursor);
因为这里虽然是给整个textEdit设置,但是实际上,只是给第一段设置了。所以如果如果要对所有的段落进行设置就需要遍历当前textEdit的document中所有的段落,对一个一个的段落进行设置。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Qt实现带字数限制的文字输入框
核心构思 核心的点在于,限制输入的字数:主要的方法为创建一个组合窗口 textChanged 这个信号,会在你输入字符之后发射,可以连接这个信号,在发射了信号之后,去获取当前QTextEdit里的内容,获取数量,然后根据最大数量,来选择是不是需要截取文本: 光标的移动的问题.在进行插入时,光标要时刻保持在当前位置. 文字内容的行高.这里请看解决Qt设置QTextEdit行高的问题 代码实现 // 首先连接信号 connect(ui->textEdit, &QTextEdit::textCha
-
Qt实现自定义验证码输入框控件的方法
前言 本文实现了自定义的验证码输入框控件.控件包括图标.输入框.获取验证码按钮.验证码获取倒计时标签.支持鼠标点击获取验证码按钮后开始显示倒计时功能,倒计时为0时,才可以在此点击获取验证码按钮.效果如图: 主要的编程思想还是实现自定义控件的封装性和共用性. UI布局: 控件1:QWidget,实现整个控件的封装,这个控件使用水平布局,实现控件的水平摆放,同时,当其中一个控件隐藏时,位置会重新更新,实现在控件的后面只显示获取验证码和倒计时两个控件中的一个. 控件2:QLabel,实现展示盾牌图标.
-
C++中的Qt QTableView详解
目录 一.常用接口 1.设置model,添加model数据 2.节点可以带一些数据 3.一些别的常用设置 4.自动调整行高和列宽 5.设置表格不可编辑 6.设置行列头不显示 二.设置item属性 三.右键弹出菜单 四.源码 一.常用接口 1.设置model,添加model数据 model = new QStandardItemModel(this); model->setHorizontalHeaderLabels(QStringList()<<"姓名"<<
-
c++ qt自定义搜索编辑框的实现方法
目录 自定义LineEdit 主界面代码 其它说明 实现效果如下: 实现方法说明:(1)自定义QLineEdit,在编辑框里添加布局,将按钮设置在右边(2)给自定义QLineEdit添加信号,当点击按钮搜索按钮时发送信号到主界面做相应的操作 自定义LineEdit csearchlineedit.h #ifndef CSEARCHLINEEDIT_H #define CSEARCHLINEEDIT_H #include <QLineEdit> #include <QPushButton&
-
Qt中QPainter与坐标的使用
目录 一.坐标系统与坐标变换 示例 二.可缩放图形 一.坐标系统与坐标变换 坐标系统 QPainter坐标变换相关函数 分组 函数原型 功能 坐标变换 void translate(qreal dx,qreal dy) 坐标系统一定的偏移量,坐标原点平移到新的点 void rotate(qreal angle) 坐标系统顺时针旋转-一个角度 void scale(qreal sx,qreal sy) 坐标系统缩放 void shear(qrael sh,qreal sy) 坐标系统做扭转变换 状
-
Qt结合OpenCV部署yolov5的实现
目录 一.新建项目 UI设计 二.代码部分 mainwindow 类 三.效果演示 分别使用了openvino,opencv_cuda进行加速. 关于演示视频及代码讲解请查看:https://www.bilibili.com/video/BV13S4y1c7ea/https://www.bilibili.com/video/BV1Dq4y1x7r6/https://www.bilibili.com/video/BV1kT4y1S7hz/ 一.新建项目 UI设计 二.代码部分 mainwindow
-
QT中QChart绘制折线图
目录 一.简单绘图 二.绘制折线图 实例 一.简单绘图 Qt Charts基于Qt的Graphics View架构,其核心组件是QChartView 和 QChart QChartView是显示图标的视图,基类为QGraphicsView QChart的基类是QGraphicsltem 类的继承关系: 创建项目:.pro文件中添加:QT += charts代码如下:其他文件未修改,修改代码只在mainwindow.cpp文件中进行.mainwindow.cpp #include "mainwin
-
解决Qt设置QTextEdit行高的问题
解决方法: QTextDocument* doc = ui->edtCountryIntroduce->document(); for(QTextBlock it = doc->begin(); it != doc->end(); it = it.next()) { QTextCursor textCursor(it); QTextBlockFormat textBlockFormat = it.blockFormat(); //set line height textBlockF
-
详解C#设置Excel数据自适应行高、列宽的2种情况
Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小.数据内容长度不一而出现,列宽过宽.过窄或者行高过大.过小的问题.常见的解决方法是调整行高.列宽.在Microsoft Excel中,在单元格格式设置中可手动设置自适应行高或自适应列宽,但通过代码,我们可以通过方法AutoFitColumns()或者AutoFitRows()来设置指定数据范围或整个工作表的自适应行高.列宽.这里设置自适应分以下2种情况来进行: 1. 固定数据,设置行高.列宽自适应数据 2. 固定行高.列宽,设
-
你应该知道的tableViewCell行高计算处理
前言 UITableView 是在app界面里非常常用的一个控件了,打开一个app,内容列表 作者列表 朋友圈列表等等,,,都离不开 UITableView . 而 UITableView 的精髓,则是在 UITableViewCell 展现的, 最常用的 自定义cell 有的行高是固定的,而大部分 则需要根据内容来计算行高展示的. 下面就说说我在实际开发中处理cell行高的几种情况: 1. 不需要动态计算高度 我在写tableview时,基本都是自定义cell,而所有的自定义cell,都会继承
-
关于iOS自适应cell行高的那些事儿
前言 其实早就准备写这篇文章了,但是一直没有系统去整理一下相关的demo,加上最近离职了,各种事情忙的有点郁闷,所以一直拖沓了下来.回家休息了一段时间想起来写了一半的demo,在还没找工作的这段空挡时间抽空完善了一下再写篇说明文档备忘一下. 需求背景 iOS的cell行高自适应是个非常常见的需求,也是一个非常简单的需求,之前我遇到过很多小伙伴不知道怎么来实现,在这里就一步步的来分析一下,供大家参考. 问题分析 其他的实现场景就不说了,我们现在来分析一下具体的需求,如图所示: 其实主要实现这几点就
-
Python docx库删除复制paragraph及行高设置图片插入示例
目录 引言 1.复制paragraph 2.删除paragraph 3.插入图片和paragraph行高设置 引言 这两天做一个python小工具,用到了docx库,涉及到paragraph的删除.,还有行高设置等技术,这里做一下记录. 1.复制paragraph 即用来原文档的加粗.斜体,下划线,颜色等属性的,官方没有提供paragraph的接口,只能自己实现: # paragraph 的 def get_para_data(output_doc_name, paragraph): "&quo
-
Element表格表头行高问题解决
目录 前言 一.问题原因 二.解决方法 Vue 修改 elementUI table tr th 的高度,以及背景颜色 前言 在最近一个项目的后台管理系统中,写前端界面时用到了ElementUI,但是发现导入数据表格之后表头的高度一直很高,如下图所示: 在网页上搜索了很多的解决办法,都没有作用.后来折磨了一段时间后解决了这个问题,在此进行记录. 提示:以下是本篇文章正文内容,下面案例可供参考 一.问题原因 在网页中检查代码时发现没有style来设置表格表头的高度,只有调整.el-main中的li
-
QT自定义QTextEdit实现大数据的实时刷新显示功能实例
目录 前言 一. 思路 二.关键部分代码 1.缓存 2.滚动部分代码 三.需要优化的地方 总结 前言 最近使用QT中的QTextEdit控件,作为实时数据显示的UI,在一次写入超过多少k的时候循环写入则会卡顿,网上也没有什么好的解决方案,左思右想自己实现一个类似的demo.后期封装起来继承QWidget就可以在其他地方应用,直接上图: 主要功能介绍: 1.这里用一个6M多的文件加一个定时器100ms模拟实时数据,可以 自定义保存多少数据,默认是保存10M数据: 2.行号的显示和隐藏: 3.右侧滚
-
MySQL通过触发器解决数据库中表的行数限制详解及实例
MySQL通过触发器解决数据库中表的行数限制详解及实例 最近项目一个需求是对操作日志的数量限制为10万条,超过十万条便删除最旧的那一条,保存数据库中日志数量不超过10万. 当时我的第一想法是通过触发器来做,便在数据库中执行了如下的SQL: delimiter $ create trigger limitLog before insert on OperationLog for each row begin if (select count(*) from OperationLog) > 1000
-
DataGridView自动设定列宽和行高
设定行高和列宽自动调整 设定包括Header和所有单元格的列宽自动调整 //设置包括Header和所有单元格的列宽自动调整 this.dgv_PropDemo.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; 设定包括Header和所有单元格的行高自动调整 //设置包括Header和所有单元格的行高自动调整 this.dgv_PropDemo.AutoSizeRowsMode = DataGridViewAutoSiz
-
DataGridView自动调整行高和行宽
DataGridView1.AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader ///根据数据内容自动调整列宽 DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders ///根据数据内容自动调整行高
随机推荐
- iOS 正则表达式详解
- PHP中将网页导出为Word文档的代码
- ThinkPHP CURD方法之table方法详解
- Go语言中的switch用法实例分析
- 在ASP中调用存储过程的几种方法
- 通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
- android textview 显示html方法解析
- SQLServer2008的实用小道具 merger使用介绍
- 谈谈新手如何学习PHP
- Android实现价格走势自定义曲线图
- ligerUI---ListBox(列表框可移动的实例)
- React教程之封装一个Portal可复用组件的方法
- js实现json数组分组合并操作示例
- vue用Object.defineProperty手写一个简单的双向绑定的示例
- python 格式化输出百分号的方法
- js的对象与函数详解
- vue模式history下在iis中配置流程
- flutter传递值到任意widget(当需要widget嵌套使用需要传递值的时候)
- java自定义jar包让jmeter使用的方法
- python实现简单加密解密机制
