社区
Qt
帖子详情
QTextEdit高度自适应的问题?
smartstar2005
2010-03-13 06:16:02
最近用QT做一个小工具,用到QTextEdit。需要QTextEdit能根据文本的类容多少自动调整控件的高度。我试了试布局,没有找到好的解决办法。大家给个建议。多谢了!
...全文
1331
12
打赏
收藏
QTextEdit高度自适应的问题?
最近用QT做一个小工具,用到QTextEdit。需要QTextEdit能根据文本的类容多少自动调整控件的高度。我试了试布局,没有找到好的解决办法。大家给个建议。多谢了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
中才德创
2012-06-26
打赏
举报
回复
这个控件有没有自计算高度的函数?
记得表格的行是有的。
lslxdx
2012-06-25
打赏
举报
回复
参考了http://blog.csdn.net/IBM123/archive/2010/04/17/5496970.aspx
里介绍的方法,然后修改了下。
lslxdx
2012-06-25
打赏
举报
回复
使用QTextDocument的contentsChanged信号解决此问题。
QTextEdit *editor = new QTextEdit(this);
...
connect(editor->document(),SIGNAL(contentsChanged()),this,SLOT(textAreaChanged()));
...
private slots:
void textAreaChanged(){
QTextDocument *document=qobject_cast<QTextDocument*>(sender());
document->adjustSize();
if(document){
QTextEdit *editor=qobject_cast<QTextEdit*>(document->parent()->parent());
if (editor){
int newheight = document->size().rheight()+10;
if (newheight != editor->height()){
editor->setFixedHeight(newheight);
}
}
}
}
seven407
2010-08-21
打赏
举报
回复
刚看到一个解决办法,可以试试: http://blog.csdn.net/IBM123/archive/2010/04/17/5496970.aspx
vanchristin
2010-07-09
打赏
举报
回复
同求分享
skyjsq
2010-07-07
打赏
举报
回复
楼主你的问题解决没,可否分享一下
dyw
2010-03-14
打赏
举报
回复
试试这个方法:从QTextEdit派生一个类重新实现heightForWidth方法,返回当前文档的高度值。然后文本内容有变化时调用updateGeometry
smartstar2005
2010-03-13
打赏
举报
回复
多些MicroSky2813!
我还没有试,会头看看你的方法。
实在多些了!
MicroSky2813
2010-03-13
打赏
举报
回复
查找 '\n' '\r'这样的,但根据系统不同''\n'\r'的使用可能不同,
可以考虑使用库德getline之类循环
MicroSky2813
2010-03-13
打赏
举报
回复
[Quote=引用 1 楼 microsky2813 的回复:]
QTextEdit有个事件是滚动条出现的事件,这个事件一引发就增加高度就可以了
[/Quote]
等等,我搞错了,没有那个时间
还有一种办法,使用QLabel这样的自动调节的类,做一个隐藏的,然后得到一行字所占的Height,然后通过得到QTextEdit的行数,再通过change之类的事件动态的调节QTextEdit的高度。这方法不太优雅,呵呵
smartstar2005
2010-03-13
打赏
举报
回复
多谢!但是怎么根据内容的多少计算控件的高度呢?
MicroSky2813
2010-03-13
打赏
举报
回复
QTextEdit有个事件是滚动条出现的事件,这个事件一引发就增加高度就可以了
Qt
中
QT
ext
Edit
高度
自适应
当
QT
ext
Edit
中输入的文字长度过长,
QT
ext
Edit
就会出现滚动条。如果不想出现滚动条,而想
QT
ext
Edit
的
高度
随着文字的增加或减少而改变。 //widget.h #ifndef WIDGET_H #define WIDGET_H #include #include #include #include class Widget : public QWidget { Q_OBJECT public: Widget(QWidget *parent = 0); ~Widget();
QT
ext
Edit
*t
ext
Edit
; private slots:
Qt
QT
ext
Edit
之
自适应
大小
QT
ext
Edit
我们在用
QT
ext
Edit
文本框时,总会遇到这样的
问题
,随着文字的增多,想让文本框也跟着变动,但是只让他的
高度
变动,而宽度不变。 其实在
QT
ext
Document中存在一个函数 void
QT
ext
Document::adjustSize(),他可以跟随文本字数的变动从而调整大小,但是,这会导致,宽度也会变化,基于此,我们只需重新设置
高度
即可。 CMyT
ext
Edit
.cpp(主要函数) CMyT
ext
Edit
继承于
QT
ext
Edit
//注意该函数为槽函数 void CMyT
ext
Py
Qt
PySide6零基础入门与项目实战
课程亮点 本课程是PySide6零基础入门与项目实战视频教程,经过精心设计,分为十个章节,制作了141页ppt, 接近70个代码示例,主要讲解PySide6开发环境安装、基础控件与界面布局、项目实战,PySide6程序打包,安装包制作,安装卸载、更新,发布等知识。涵盖从基础概念到高级应用的全方位知识,旨在为你提供一条清晰、系统的学习之路。无论你是编程新手,还是希望深化对PySide6的了解,本课程都能满足你的需求。 教学环境:Win11 64bit、Python3.11、PyCharm、Anacoda。课程大纲第一章:基础篇 PySide6开发环境安装 从Anaconda环境配置开始,带你快速入门Win11/win10下PySide6、Py
Qt
5开发环境的安装与配置,分别介绍PyCharm与VSCode如何配置PySide6, 以及Python AnaConda的基本用法,创建虚拟环境,安装python模块。第二章 控件与布局篇 PySide6常用控件与界面布局使用介绍 深入PySide6中的常用控件与界面布局技巧,通过丰富的实例,掌握PySide6的窗口、布局、控件等核心内容。主要介绍QLabel、QPushButton、QLine
Edit
、QCheckBox、QComboBox、
QT
ext
Edit
、
QT
ext
Browser、QListView与QListWidget、QStackedWidget、
QT
abWidget、
QT
ableView等控件以及水平垂直布局,弹簧控件,栅格布局,表单布局。第三章 信号槽与事件机制 解锁PySide6的信号槽机制和事件处理技能,让你的应用更加灵活。详细介绍
Qt
自定义信号槽,跨窗口传递信号;
Qt
鼠标事件,键盘事件,组合事件,事件过滤。第四章 QMainWindow应用篇 详细介绍QMainWindow的使用,包括菜单栏、工具栏、状态栏和停靠窗口等。第五章 样式表qss与自定义控件 教你如何使用样式表美化应用界面,并创建独特的自定义控件。掌握这些技能后,学员将能够设计出既美观又功能丰富的用户界面。第六章 图表与曲线 引入py
qt
graph,展示如何在PySide6应用中绘制图表和动态曲线。第七章 数据库编程 带你进入数据库编程世界,使用sqlite3与PySide6结合,进行数据存储和管理。第八章 项目实战:高仿有道词典 通过一个高仿有道词典的项目,将所学知识融会贯通,实战演练。课程中将会接入翻译接口,开发一个属于自己的翻译软件。第九章 打包与部署 教你如何将PySide6项目打包成exe,并使用Inno Setup制作安装包,介绍软件更新、卸载策略,让你的应用轻松上线。第十章 课程总结 回顾整个课程的学习内容,巩固知识点,为进一步的学习和应用打下坚实的基础。教学特色 实战案例:每个章节都配备实战案例,让学习者在实践中深化理解。 代码资料全覆盖:提供全套课程代码资料下载,便于学习者随时查阅和复习。 高效学习路径:课程内容结构清晰,由浅入深,适合不同层次的学习者。 本课程提供全部代码与在线答疑。谁应该学习这个课程 对图形界面开发感兴趣的编程新手。 希望提升个人技能,进入或者深耕在GUI开发领域的开发者。 需要快速掌握PySide6进行项目开发的软件工程师。结语 通过本课程的学习,你不仅能掌握PySide6的核心技能,还能通过实战项目提升解决实际
问题
的能力,最终让你能独立完成专业的GUI应用开发。随着技术的深入,你将发现PySide6不仅仅是一个工具库,它开启的是一扇通往高效、美观应用开发的大门。 开始PySide6的学习之旅,让你的编程之路更加精彩!
QT
ext
Edit
实现
自适应
高度
的聊天气泡(简单易懂有注释)
简单实现
自适应
聊天气泡
QT
ext
Edit
或
QT
ext
Browser
高度
自适应
以下方法收集自网络 使用
QT
ext
Document 的 contentsChanged 信号可以解决此
问题
。
QT
ext
Edit
*
edit
or = new
QT
ext
Edit
(this); ... connect(
edit
or->document(),SIGNAL(contentsChanged()),this,SLOT(t
ext
AreaChanged())); ... private...
Qt
16,201
社区成员
26,591
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章