本节介绍一些常用的控件,是在“图像处理自编软件”中用到的几种,包括QLabel、QPushButton、QLineEdit、QTextEdit、QSlider、QSpinBox、 QRadioButton、QComboBox,下面逐一进行介绍QLabel、QPushButton、QLineEdit、QTextEdit,其余见下文。

// 接上文,在DockWidget停靠窗口上添加控件,如果在主窗口添加控件,删除参数dock_Geom或是将其改为this即可
QLabel *label = new QLabel(tr("label"), dock_Geom); // QLabel文本框,可用于显示文字和图像,如果想在主窗口创建控件,第二个参数QWidget *parent改为this即QLabel *label = new QLabel(tr("label"), this);QPushButton *button = new QPushButton(tr("按钮"),dock_Geom);    // QPushButton按钮
connect(button, SIGNAL(clicked()), this, SLOT(slot_button()));QLineEdit *lineEdit = new QLineEdit(tr("Line"), dock_Geom);     // 单行文本输入框
lineEdit->setReadOnly(true);                                    // 设置只读QTextEdit *textEdit = new QTextEdit(tr("Text"), dock_Geom);     // 可编辑多行文本框,
textEdit->textCursor().movePosition(QTextCursor::End);          // 垂直滚动条自动跟踪到最底部
textEdit->setWordWrapMode(QTextOption::NoWrap);                 // 添加水平滚动条
textEdit->setReadOnly(true);                                    // 设置只读
textEdit->append("第1行");                                      // 换行显示
textEdit->append("第2行");// 布局
label->move(50, 50);        // 设定位置
button->move(200, 50);
lineEdit->move(50, 100);
textEdit->move(50, 150);
textEdit->resize(200, 100);


Qlabel

  QLabel提供了一个文本或图像的显示,没有提供用户交互功能。

纯文本: 使用setText()设置一个QString
富文本: 使用setText()设置一个富文本的QString
图像: 使用setPixmap()设置一个图像
动画: 使用setMovie()设置一个动画
数字: 使用setNum()设置int或double,并转换为纯文本。

文本对齐方式

默认的标签文本对齐方式为:左对齐、垂直居中,可以通过setAlignment来设置,
如居中对齐:setAlignment(Qt::AlignCenter);

文本自动换行

setWordWrap(true);
当文本过长时,可设置自动换行。要注意,如果是英文单词换行,有空格才能换行。如“abcdefghijklmn”与“abcdefg
hijklmn”,前者不换行,后者过长时会在空格处自动换行。

显示数字

pLabel->setNum(0.1);

显示图像

QPixmap *pixmap= new QPixmap (“../Images/pic.png”);
pLabel->setPixmap(pixmap);
pLabel->setFixedSize(100, 100);
pLabel->setScaledContents(true);

显示动画

QMovie *pMovie = new QMovie(“../Images/movie.avi”);
pLabel->setMovie(pMovie);
pLabel->setFixedSize(135, 200);
pLabel->setScaledContents(true);
pMovie->start();


QpushButton

  QPushButton是一个按键类。

class Q_GUI_EXPORT QPushButton : public QAbstractButton
{
Q_OBJECT

}

构造函数:

QPushButton ( QWidget * parent = 0 ) QPushButton ( const
QString & text, QWidget * parent = 0 ) QPushButton ( const QIcon &
icon, const QString & text, QWidget * parent = 0 )

常用属性和方法:

(1) QString text () const:返回按键上的文字;
(2) void setText ( const QString & text ):设置按键上的文字;
(3) bool autoDefault() const;:autoDefault属性,它会影响按键的外观;
(4) void setAutoDefault(bool);:设置autoDefault属性;
(5) bool isDefault() const;:default属性,仅在Dialog中此属性有效;
(6) void setDefault(bool);:设置default属性;
(7) void setFlat(bool);:设置FLAT属性
(8) bool isFlat() const;:设置按键的外观是否有突起。


QLineEdit

  QLineEdit是一个单行文本输入框,允许用户输入和编辑单行纯文本,提供了很多有用的编辑功能,包括:撤消和重做、剪切和粘贴、以及拖放。常用于输入密码,如改变输入框的echoMode()并设置为 “只写”。可用maxLength()限制文本的长度。

void setText() 设置文本
QString text() 获取文本。
void setSelection()或selectAll() 选中文本,选中的文本可以被cut()、copy()和paste(),
void setAlignment() 设置文本的对齐方式。
QString displayText() 返回显示的文本。
void setMaxLength(int) 设置允许的最大长度,多余部分截断
void setReadOnly(bool) 设置是否只读


QTextEdit

  QTextEdit是一个多行文本输入框,能显示多行文本内容,当文本内容超出控件显示范围时,可以显示水平和垂直滚动条。

设置多行文本框的内容:

textEdit->setPlainText(“12345\nabcdef”);

获取多行文本框的内容:

QString str = textEdit->toPlainText();

垂直滚动条自动跟踪到最底部

textEdit->textCursor().movePosition(QTextCursor::End);

添加水平滚动条

textEdit->setWordWrapMode(QTextOption::NoWrap);

设置只读

textEdit->setReadOnly(true);

换行显示

textEdit->append(“换行”);

【QT】QT从零入门教程(八):QT常用控件 [QLabel、QPushButton、QLineEdit、QTextEdit]相关推荐

  1. 【QT开发笔记-基础篇】| 第二章 常用控件 | 2.12 表格控件 QTableWidget

    本节对应的视频讲解:B_站_链_接 QTableWidget 是 Qt 中的表格控件,可以行列的形式来展示数据 1. 属性和方法 QTableWidget 有很多属性和方法,完整的可查看帮助文档. 在 ...

  2. Qt图形界面编程入门(基本窗口及控件)

    基本窗口类QWidget QWidget是所有窗体部件的基类,例如对话框类,主窗体类,以及其他诸如按钮,编辑框,标签等等都是由QWidget派生得到,QWidget拥有的方法往往都可以在其他子类中使用 ...

  3. 【QT开发笔记-基础篇】| 第二章 常用控件 | 2.2 按钮 QPushButton

    本节对应的视频讲解:B_站_视_频 https://www.bilibili.com/video/BV1zG411s7LG QPushButton 是 Qt 中的按钮,通常用于响应用户的点击,然后执行 ...

  4. 【QT开发笔记-基础篇】| 第二章 常用控件 | 2.3 标签 QLabel

    本节对应的视频讲解:B_站_链_接 https://www.bilibili.com/video/BV1wB4y1B7b7 QLabel 是 Qt 中的标签类,通常用于显示提示性的文本,也可以显示图像 ...

  5. 【QT开发笔记-基础篇】| 第二章 常用控件 | 2.9 滑动条 QSlider

    本节对应的视频讲解:B_站_链_接 https://www.bilibili.com/video/BV1BT411g791 QSlider 是滑动条控件,滑动条可以在一个范围内拖动,并将其位置转换为整 ...

  6. 【QT开发笔记-基础篇】| 第二章 常用控件 | 2.11 列表框 QListWidget

    本节对应的视频讲解:B_站_链_接 https://www.bilibili.com/video/BV1gd4y1Q7Bw Qt 中的列表框控件,对应的类是 QListWidget 它用于显示多个列表 ...

  7. 零基础Bootstrap入门教程(9)--使用表单控件

    点此查看 所有教程.项目.源码导航 本文目录 1. 概述 2. 基本输入控件 3. 调整表单控件的大小 4. 表单控件的特殊用法 4.1 单选框用法 4.2 复选框用法 5. 小结 1. 概述 表单控 ...

  8. kettle详细使用oracle教程,Kettle入门教程(详细介绍控件使用方法)_kettle详细使用教程,kettle控件介绍...

    Kettle入门教程(详细介绍控件使用方法)本手册主要是对Kettle工具的功能进行详细说明以及如何操作该系统,适合所有使用该系统的人员. 服务查询 数据库查询 数据库连接 流查询 调用存储过程 转换 ...

  9. WPF界面控件Telerik UI for WPF新手入门教程 - 如何添加telerik控件

    本教程将介绍执行哪些步骤才能在应用程序中添加Telerik UI for WPF控件. 有两种方法可以做到这一点 - 第一种是为 VisualStudio 安装 Progress Telerik WP ...

最新文章

  1. 110万开发者的福音,百度Easy DL商品检测专业版上线
  2. WPF 加载等待动画
  3. MT6575 3G切换2G
  4. 生成 Heap Dump 的几种方式
  5. linux终端Tab提示对大小写不敏感
  6. 互联网级监控系统必备-时序数据库之Influxdb技术
  7. AGC022E - Median Replace
  8. java文件替换一行数据_用Golang替换文件中的一行
  9. java float 高效加减_java Double 进行加减乘除
  10. MongoDB使用小结:一些不常见的经验分享
  11. Linux系统如何连接和上传文件到服务器上
  12. C++课堂作业_02_PAT1025.反转链表
  13. 纯css3特效实现的文字亮光
  14. OpenCV之图像腐蚀
  15. (转)你确定你的交易系统最快?
  16. IDEA运行下载的Servlet时报错 Error running Tomcat 8.5.8: Unable to open debugger port (127.0.0.1:49551):
  17. mac 安装android apk文件,.apk文件用苹果系统怎么打开
  18. 超越计算复杂性—— 试错、能动和智能
  19. setup maven plugin connection
  20. 北、上、广、深数据分析职位分析

热门文章

  1. php框架原理 php初识,初识 PHP 7 源码整体框架
  2. ShuffleNetV2论文译读笔记
  3. Altium AD20将已有的原理图PCB导出为封装库
  4. 机器学习之常用优化方法(GD、牛顿、拟牛顿、拉格朗日乘子)
  5. React 记坑 ----- 关于 react-redux 中共享状态更新时自动重新 render 页面的问题
  6. Java中ArrayList、Integer[]和int[]的相互转换
  7. Python中if __name__=='__main__': 理解与总结(看这篇就够了,一文扫清疑惑!)
  8. Spring beans配置方案(三) 学习笔记
  9. mssql查询过去一段时间数据库中执行过的语句及执行效率
  10. 淘宝爬取某人的所有购物订单