QT 让QLabel自适应text的大

在实现了newform的2个页面的功能以后,为了完善产品的人性化,我在第2个页面上增加了一个显示前面已经选择的路径和模板名称的功能。但是这里就遇到了一个问题,如果万一用户选择的路径和名称都太长了,那么下面在显示的时候就会截断,这就很不爽了。

别看这个小问题,这就涉及了2个技巧。

1. 让QLabel自适应text的大小,直接用下面的代码:

LabelName->adjustSize();

2. 让QLabel能够自动判断并换行显示:

LabelName->setGeometry(QRect(328, 240, 329, 27*4));  //四倍行距

LabelName->setWordWrap(true);
LabelName->setAlignment(Qt::AlignTop);

时间: 2024-10-06 05:14:24

QT 让QLabel自适应text的大的相关文章

Qt中用正则表达式来判断Text的语种,主要通过判断unicode的编码范围

QString MainWindow::ParseLanguage(QString Text) {     if(Text.length()<=0)     {         return "";     }     QString sRegNum = "[0-9]+";     QString sRegEn = "[a-zA-Z]+";     QString sRegCn = "[\\x4e00-\\x9fff]+"

Qt之QLabel

简述 QLabel提供了一个文本或图像的显示,没有提供用户交互功能. 一个QLabel能够包括以下随意内容类型: 内容 设置 纯文本 使用setText()设置一个QString 富文本 使用setText()设置一个富文本的QString 图像 使用setPixmap()设置一个图像 动画 使用setMovie()设置一个动画 数字 使用setNum()设置int或double,并转换为纯文本. Nothing 空的纯文本,默认的.使用clear()设置 简述 纯文本 显示 对齐方式 自己主动

Qt(QLabel)实现滚动字幕

滚动字幕,也叫跑马,就是动态显示一行字符.前面实现是使用QTimer控制,直接在槽函数中截取字符串进行显示,只控制字符串在控件的一端显示,超出控件的部分并没有从控件的另一端循环显示出来.于是我重新实现了一种方法,或者说完善了前面的不足吧. 使用QTimer控制显示的节奏,在paintEvent中进行截取显示.从左端被截掉的部分会从右端显示出来. 难点在于,我们需要依据控件的宽度,控制字符串的显示位置.所以我们还需要知道每个字符的宽度.QWidget提供了方法可以计算字符的宽度,QFontMetr

新手:Qt之QLabel类的应用

在Qt中,我们不可避免的会用到QLabel类.而Qlabel的强大功能作为程序员的你有多少了解? 下面,跟着我一起在来学习一下吧! 1.添加文本 Qlabel类添加文本有两种方式,一种是直接在实现时添加,如: 1 QLabel *label = new QLabel(QString("Holle,世界"), this); 2 //QLabel *label = new QLabel(tr("Holle,世界"), this); 一种是在实现后添加,如: 1 int

【Qt】QLabel实现的圆形图像

本篇只描述圆形图像的两种实现方式,动态阴影边框如下: 目前实现的效果如下: 左右两边实现的方式不同: 右边比较简单 min-width: 100px; max-width: 100px; min-height: 100px; max-height: 100px; border-radius: 50px; border-width: 0 0 0 0; border-image: url(H:/Qt Project/UIDesignTest/Heben.jpg) 0 0 0 0 stretch st

【Qt】QLabel之动态阴影边框

效果如下: 实现思路参考了下面的文章: Qt 之 QPropertyAnimation 该文章是自定义属性alpha,原理类似,代码如下: //在头文件加入 Q_PROPERTY(int iBorderRadius READ iBorderRadius WRITE setBorderRadius) //自定义属性修改QLable的边框,以达到动画效果 private: int iBorderRadius() const; void setBorderRadius(const int radius

QT为QLabel添加Click事件

其实就是改写了一个函数:mouseReleaseEvent,当在QLabel放开鼠标的时,就发射点击信号. [cpp] view plaincopy #ifndef CLICKEDLABEL_H_ #define CLICKEDLABEL_H_ #include <QLabel> #include <QWidget> class ClickedLabel : public QLabel { Q_OBJECT signals: void Clicked(ClickedLabel* c

软件开发大爆炸,被诺基亚错过的Qt正迎来黄金时代

软件开发工具Qt的第一个公众预览版于1995年面世,之后在2008年被诺基亚收购:2011年到2012年,在诺基亚全面转向微软系后,将Qt软件业务出售给了芬兰IT服务公司Digia:2016年Qt公司从Digita独立出来后,在芬兰上市:2017年获得1500万欧元投资:2018年在坚持了20多年后,Qt终于迎来了物联网特别是智能汽车.智能制造业等风口. 作为一个完整的.跨平台的C++图形用户界面应用程序开发框架,Qt不仅有着悠久的历史,也有着其独特的价值.C++是全球前十大受欢迎的编程语言,迄

开篇-QT完全手册

嵌入式工具Qt的安装与使用 摘要 Qt是Trolltech公司的一个产品.Trolltech是挪威的一家软件公司,主要开 发两种产品:一种是跨平台应用程序界面框架:另外一种就是提供给做嵌入式Linux开发的应用程序平台,能够应用到PDA和各种移动设备上.Qt和 Qtopia分别是其中具有代表性的两个.(2004-05-05 10:52:14) -----------------------------------------------------------------------------