Qt基础 QT QTextEdit自动滑动

目录

1.吐槽那些写文章不动脑子的人,不带脑子就别写,误人子弟

2.问题解决:


1.吐槽那些写文章不动脑子的人,不带脑子就别写,误人子弟

最近公司在做一个提词项目,本来对这里功能难易感觉属于一般的,谁知道碰到一个很简单问题,搞了半天,先喷一下百度浏览器 不知道是算法越来越垃圾,还是我检索的有问题,还是说这个问题很难。

我搜的问题是:  结果全出来是尼ma什么东西,我点开一个看代码,有点常识好吗?那个End不用看意思就知道光标移动到文章尾部,还自动滚动,滚尼ma呢。

还有这种的自动滚动内容?嗷  你意思我一篇文章我加入一段Text,你直接滚到最后一行?严重标题与内容不符,别用猪脑写文章好不好!!

2.问题解决思路:

QTextEdit自动滚动我想到有三种办法

第一种你得算每行的像素值,然后根据整个框像素/单个像素,然后根据光标去++(这种方法太麻烦),

第二种是QScrollBar(其实就是滑动条)

获取QTextEdit的QScrollBar,然后再构造函数算出QScrollBar歩长pageStep和maximum(这里不知道为什么在其他地方算的步长很大),然后就定时器QScrollBar++或者--啦。

第三种使用QScrollBar方法:void QAbstractSlider::triggerAction(QAbstractSlider::SliderAction action)

QAbstractSlider::SliderAction 枚举(无标志)
作用:描述触发滑块动作的方式
成员    值    说明
QAbstractSlider::SliderNoAction    0    无动作
QAbstractSlider::SliderSingleStepAdd    1    向最大值方向移动一个单个步长的距离
QAbstractSlider::SliderSingleStepSub    2    向最小值方向移动一个单个步长的距离
QAbstractSlider::SliderPageStepAdd    3    向最大值方向移动一个页面步长的距离
QAbstractSlider::SliderPageStepSub    4    向最小值方向移动一个页面步长的距离
QAbstractSlider::SliderToMinimum    5    把滑块移至最小值(home 键)
QAbstractSlider::SliderToMaximum    6    把滑块移至最大值(end 键)
QAbstractSlider::SliderMove    7    移动滑块
 

tip算光标位置:

#include <QTextLayout>
#include <QTextCursor>
#include <QTextBlock>

QTextCursor tc = ui.PromptEdit->textCursor();
    //当前光标 
    QTextLayout *lay = tc.block().layout(); 
    int curpos = tc.position() - tc.block().position();
    //当前光标在本BLOCK内的相对位置 
    int textline = lay->lineForTextPosition(curpos).lineNumber() + tc.block().firstLineNumber();
    //int textline = ui.PromptEdit->document()->lineCount(); 好像是从0开始的行号,记不清了,可以调试看看。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Visual Studio Code安装和设置中文

文章目录 Visual Studio Code安装Visual Studio Code设置中文 步骤如下: Visual Studio Code安装 1.下载安装包 VS Code的官网 下载链接中的“az764295.vo.msecnd.net” 替换为国内镜像地址“vscode.cdn.azure.cn”&#xff0c;下载速度直接飙升至几十 Mb/s。(在官网下载速度…

HCIA-经典综合实验(二)

经典综合实验&#xff08;二&#xff09; 实验拓扑配置步骤配置Eth-Trunk聚合链路第一步 配置二层VLAN第二步 配置MSTP生成树第三步 配置相关IP地址第四步 配置DHCP及DHCP中继第五步 配置三层的网关冗余协议 VRRP及OSPF第六步 配置静态路由,NAT地址转换及其他配置完善 配置验证…

微服务基础,分布式核心,常见微服务框架,SpringCloud概述,搭建SpringCloud微服务项目详细步骤,含源代码

微服务基础 系统架构的演变 随着会联网的发展&#xff0c;网站应用的规模不断扩大&#xff0c;常规的应用架构已经无法应对&#xff0c;分布式服务架构以及微服务架构势在必行&#xff0c;必须一个治理系统确保架构有条不紊的演进 单体应用框架 Web应用程序发展的早期&…

【Qt-23】Qt charts绘制曲线图

一、QChart简介 QChart是Qt中专门用于绘制图表的模块&#xff0c;支持折线图、柱状图、饼图等常见类型。其主要组成部分有&#xff1a; QChart&#xff1a;整个图表的容器&#xff0c;管理图表中的所有数据和图形属性QChartView&#xff1a;继承自QGraphicsView&#xff0c;用于…

Python安装第三方库出错完美解决方法

错误 Could not find a version that satisfies the requirement PIL (from versions: none) ERROR: No matching distribution found for PILTry to run this command from the system terminal. Make sure that you use the correct version of pip installed for your Pyth…

轻松找回您的珍贵回忆的最好的 6 种照片数据恢复软件!

照片是珍惜过去珍贵时刻的唯一方式。它们让记忆永存&#xff0c;帮助我们重温生命中最美好的时刻。但是&#xff0c;当这些时刻丢失时会发生什么&#xff1f;您是否曾经因系统崩溃而意外删除或丢失照片&#xff1f;丢失照片可能令人心碎&#xff0c;但仍有希望&#xff0c;因为…

力扣每日一道系列 --- LeetCode 138. 随机链表的复制

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构探索 ✅LeetCode每日一道 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 LeetCode 138. 随机链表的复制 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加…

【双指针】:Leetcode283.移动零

朋友们、伙计们&#xff0c;我们又见面了&#xff0c;本专栏是关于各种算法的解析&#xff0c;如果看完之后对你有一定的启发&#xff0c;那么请留下你的三连&#xff0c;祝大家心想事成&#xff01; C 语 言 专 栏&#xff1a;C语言&#xff1a;从入门到精通 数据结构专栏&…

[数据结构]—带头双向循环链表——超详解

&#x1f493;作者简介&#x1f389;&#xff1a;在校大二迷茫大学生 &#x1f496;个人主页&#x1f389;&#xff1a;小李很执着 &#x1f497;系列专栏&#x1f389;&#xff1a;数据结构 每日分享✨&#xff1a;旅行是为了迷路&#xff0c;迷路是为了遇上美好❣️❣️❣️ …

Git的基本操作以及原理介绍

文章目录 基本操作创建git仓库配置name和email .git目录的结构git add & git commit.git目录结构的变化 git追踪管理的数据git的版本回退回退的原理回退的三种情况 版本库中文件的删除git分支管理分支的删除合并分支时的冲突分支的合并模式分支策略git stash不要在master分…

数据结构-时间复杂度与空间复杂度详解

文章目录 算法效率时间复杂度概念计算例1例2例3补充例4 空间复杂度例1例2 算法效率 算法效率分析分为两种:第一种是时间效率&#xff0c;第二种是空间效率。时间效率被称为时间复杂度&#xff0c;而空间效率被称作空间复杂度。时间复杂度主要衡量的是一个算法的运行速度&#…

Delicious Retouch5 for mac(PS磨皮插件DR5白金版)

Delicious Retouch5是一款强大的Photoshop插件&#xff0c;专为专业摄影师和摄影爱好者设计&#xff0c;提供一系列高级修图工具&#xff0c;帮助用户更快速、更有效地进行照片修饰和美化。其主要功能包括皮肤美容、人像润色、头发修饰、修复工具等&#xff0c;并配备定制化画笔…

海外邮件接收延迟、接收不到怎么办?U-Mail邮件网关来了

随着经济全球化的发展&#xff0c;很多国内企业开始踏足海外市场&#xff0c;电子邮件就成为了国内企业与海外客户沟通交流的主要渠道。然而海外邮件接收延迟、接收不到等问题成为了困扰企业与海外客户沟通的一大阻碍&#xff0c;导致客户邮件回复不及时&#xff0c;询盘邮件接…

新版本!飞凌嵌入式RK3568系列开发板全面支持Debian 11系统

飞凌嵌入式OK3568-C/OK3568J-C开发板现已全面支持Debian 11系统&#xff0c;新系统的加持能为用户提供主控新选择&#xff0c;并为开发者带来更多开发便利&#xff01; Debian系统作为一种广受欢迎和信赖的开源操作系统&#xff0c;以其稳定性、可靠性和开放性而闻名&#xff0…

2013年5月23日 Go生态洞察:高级Go并发模式分析

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

OpenELA 正式公开 Enterprise Linux 源代码

导读近日消息&#xff0c;在红帽&#xff08;Red Hat&#xff09;宣布不再对外公开 Red Hat Enterprise Linux&#xff08;RHEL&#xff09;源代码之后&#xff0c;同属 Linux 领域的甲骨文、SUSE 及 CIQ 宣布成立了 Open Enterprise Linux Association&#xff08;OpenELA&…

xstream实现xml和java bean 互相转换

目录 pom引用java bean 类XML 转换工具类测试类执行结果注意问题 Java中实现XML和Bean的转换的方式或插件有以下几种&#xff1a; JAXB&#xff08;Java Architecture for XML Binding&#xff09;&#xff1a;JAXB是Java SE的一部分&#xff0c;可以将Java对象与XML文档相互转…

Linux 图形界面配置RAID

目录 RAID 1 配置 RAID 5配置 , RAID 配置起来要比 LVM 方便&#xff0c;因为它不像 LVM 那样分了物理卷、卷组和逻辑卷三层&#xff0c;而且每层都需要配置。我们在图形安装界面中配置 RAID 1和 RAID 5&#xff0c;先来看看 RAID 1 的配置方法。 RAID 1 配置 配置 RAID 1…

开源项目datavines内存泄漏问题分析

应用程序开启JMX java -Dspring.profiles.activemysql -Dcom.sun.management.jmxremote.port1099 -Dcom.sun.management.jmxremote.sslfalse -Dcom.sun.management.jmxremote.authenticatefalse -Djava.rmi.server.hostname127.0.0.1 -jar dataVines.jar 通过jdk自带工具&…