Qt入门系列开发教程【基础控件篇】QLabel文本标签

网友投稿 1118 2022-05-29

描述

QLabel 用于显示文本或图像。 不提供用户交互功能。 标签的视觉外观可以通过多种方式进行配置,并且可以用于为另一个小部件指定焦点助记键。

QLabel 可以包含以下任何内容类型

Plain textPass:一个用setText()设置的字符串

Rich textPass:一个包含富文本的setText().

A pixmapPass: 一个 QPixmap 使用setPixmap()设置.

A moviePass : QMovie 使用 setMovie(),可以播放gif

A numberPass setNum() 的 int 或 double,它将数字转换为纯文本。

Qt入门系列开发教程【基础控件篇】QLabel文本标签

Nothing:与空的纯文本相同。 这是默认设置。 由 clear() 设置。

警告:当将 QString 传递给构造函数或调用 setText() 时,请确保清理您的输入,因为 QLabel 会尝试猜测它是将文本显示为纯文本还是富文本(HTML 4 标记的子集)。 您可能想显式调用 setTextFormat(),例如 如果您希望文本为纯格式但无法控制文本源(例如,当显示从 Web 加载的数据时)。

当使用这些功能中的任何一个更改内容时,任何以前的内容都会被清除。

默认情况下,标签显示左对齐、垂直居中的文本和图像,其中要显示的文本中的任何选项卡都会自动展开。 但是,可以通过多种方式调整和微调 QLabel 的外观。

可以使用 setAlignment() 和 setIndent() 调整 QLabel 小部件区域内内容的定位。 文本内容也可以使用 setWordWrap() 沿着单词边界换行。 例如,这段代码设置了一个下沉式面板,右下角有两行文本(两行都与标签的右侧齐平):

QLabel *label = new QLabel(this); label->setFrameStyle(QFrame::Panel | QFrame::Sunken); label->setText("first line\nsecond line"); label->setAlignment(Qt::AlignBottom | Qt::AlignRight);

QLabel 从 QFrame 继承的属性和函数也可用于指定要用于任何给定标签的小部件框架。

QLabel 通常用作交互式小部件的标签。 为此,QLabel 提供了一种有用的机制来添加助记符(参见 QKeySequence),该助记符会将键盘焦点设置到另一个小部件(称为 QLabel 的“伙伴”)。 例如:

QLineEdit *phoneEdit = new QLineEdit(this); QLabel *phoneLabel = new QLabel("&Phone:", this); phoneLabel->setBuddy(phoneEdit);

API

//对齐方式 Qt::Alignment alignment() const //获取伙伴QWidget QWidget *buddy() const //此属性保存标签是否将缩放其内容以填充所有可用空间。 bool hasScaledContents() const //是否有被选中的文字 bool hasSelectedText() const //此属性以像素为单位保存标签的文本缩进 int indent() const int margin() const //GIF对象 QMovie *movie() const //打开外链 bool openExternalLinks() const //获取图片 QPicture picture() const QPixmap pixmap() const QTextDocument::ResourceProvider resourceProvider() const //选中的文字 QString selectedText() const //返回对一个选中的索引 int selectionStart() const //设置对齐方式 void setAlignment(Qt::Alignment) //设置小伙伴 void setBuddy(QWidget *buddy) //此属性以像素为单位保存标签的文本缩进 void setIndent(int) //此属性保存边距的宽度 void setMargin(int) //是否开启a标签 void setOpenExternalLinks(bool open) //设置此标签的富文本资源的提供者。 void setResourceProvider(const QTextDocument::ResourceProvider &provider) //此属性保存标签是否将缩放其内容以填充所有可用空间。 void setScaledContents(bool) //获取指定标签在显示文本时应如何与用户输入交互。 void setSelection(int start, int length) //设置格式 void setTextFormat(Qt::TextFormat) void setTextInteractionFlags(Qt::TextInteractionFlags flags) //是否开启自动换行 void setWordWrap(bool on) //显示的文字 QString text() const //文本格式 文本、富文本、markdown Qt::TextFormat textFormat() const //指定标签在显示文本时应如何与用户输入交互。 //如果标志包含 Qt::LinksAccessibleByKeyboard,则焦点策略也会自动设置为 //Qt::StrongFocus。 //如果设置了 Qt::TextSelectableByKeyboard,则焦点策略设置Qt::ClickFocus。 //默认值为 Qt::LinksAccessibleByMouse。 Qt::TextInteractionFlags textInteractionFlags() const //此属性包含标签的自动换行策略 bool wordWrap() const

Qt

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:HDFS系列(4) | HDFS文件读写流程
下一篇:7.8 Linux重建RPM数据库(修复损坏的RPM数据库)
相关文章