天天看点

Qt控件精讲六:显示组件

Qt Creator有10种DisplayWidgets,如下图:
Qt控件精讲六:显示组件
控件类 控件名 中文名 控件类 控件名 中文名
QLabel Label 标签 QLCDNumber LCDNumber LCD数字显示框
QTextBrowser TextBrowser 文本浏览器 QProgressBar ProgressBar 进度条
QGraphicsView GraphicsView 绘图视图 QLine HorizontalLine 线条
QCalendarWidget Calendar 日历控件 QLine VerticalLine 线条

一、Label控件

1.控件位置:DisplayWidgets->Label

2.控件介绍:略

3.控件属性设置选项

(1)name:该控件对应源代码中的名称

(2)font:设置text的字体

(3)text:用来设置或返回标签控件中显示的文本信息

4.常用成员函数

(1)QLabel::QLabel(QWidget *parent,const char *name = 0,WFlags f = 0)

构造一个名称为name,父对象为parent和标记为f的TextLabel

(2)QLabel::QLabel(const QString &text,QWidget *parent,const char *name = 0,WFlags f = 0)

构造一个名称为name,父对象为parent,标记符为f和内容为text的TextLabel

(3)void QLabel::clear()[slot]

清除标签内容

(4)void QLabel::setText(const QString &)[virtual slot]

设置标签的文本

(5)QString QLabel::text()const

返回标签的文本

二、TextBrowser控件

1.控件位置:DisplayWidgets->TextBrowser 2.控件介绍:文本浏览器继承自QTextEdit,TextBrowser是只读的,不允许对内容进行更改,但是相对于QTextEdit来讲,它还具有链接文本的作用 3.控件属性设置选项
(1)name:同上 (2)font:同上 (3)frameShape:边框样式 (4)frameShadow:边框阴影,Qt Designer提供了plain、raised、sunken (5)lineWidth:边框线宽 (6)text:显示的文本 (7)source:显示的文件名称,如果没有文件显示或来源,则显示空字符串
4.常用成员函数

(1)QTextBrowser::QTextBrowser(!QWidget *parent = 0,const char *name = 0)

构造一个名称为name,父对象为parent的TextBrowser

(2)void QTextBrowser::backward()[virtual slot]

更改内置导航链接的文件清单为显示当前一个文档,如果没有以前的文档,就什么都不做,可以实现向前翻页的功能

(3)void QTextBrowser::forward()[virtual slot]

更改内置导航链接的文件清单为显示下一个文档文件,如果没有以前的文档,就什么都不做,可以实现向后翻页的功能

(4)void QTextBrowser::home()[virtual slot]

更改显示的文件浏览器中的链接,显示第一个文件

(5)void QTextBrowser::linkClicked(const QString &name)[virtual slot]

当单击链接时,发射该信号

(6)void QTextBrowser::reload()[virtual slot]

重新载入当前的设置源

(7)void QTextBrowser::setSource(const QString &name)[virtual slot]

设置当前显示的文件名称为name

(8)QString QTextBrowser::source()const

返回当前显示的文件的文件名称

三、GraphicsView控件

1.控件位置:DisplayWidgets->GraphicsView

2.控件介绍:绘图视图是用于显示QGraphicsScene内容的控件,GraphicsView框架为2D绘图提供一个简单、容易使用、功能强大的解决方案。GraphicsView框架由三个主要的类组成:QGraphicsItem、QGraphicsScene和QGraphicsView。其中QGraphicsItem定义图元,QGraphicsScene定义场景,包含所有需要绘制的图元,根据用户的操作改变图元的状态。QGraphicsView定义观察场景的视窗,可以充当绘图的区域,成为独立的窗体被弹出,或者嵌入其他UI组件中形成符合UI组件

3.控件属性设置选项

(1)name:同上

(2)font:同上

(3)frameShape:边框样式

(4)frameShadow:边框阴影,Qt提供了plain、raise、sunken

(5)lineWidth:边框线宽

4.常用成员函数

(1)QGraphicsView::QGraphicsView(QWidget *parent = 0)

构造一个父对象为parent的GraphicsView

(2)QGraphicsView::QGraphicsView(QGraphicsScene *scene,QWidget *parent = 0)

构造一个父对象为parent的GraphicsView,填充场景scene到该GraphicsView

(3)void QGraphicsView::centerOn(const QPointF &pos)

调整视窗的内容,确保点pos在视窗中居中

(4)void QGraphicsView::centerOn(qreal x,qreal y)

这是一个重载函数,同函数(3),相当于调用center(QPointF(x,y))

(5)void QGraphicsView::centerOn(const QGraphicsItem *item)

这是一个重载函数,功能同(3),调整视区的内容,使项目item为中心

(6)void QGraphicsView::ensureVisible(const QRectF &rect,int xmargin = 50,int ymargin = 50)

调整视窗的内容,使视窗rect中的内容是可见的

(7)void QGraphicsView::ensureVisible(qreal x,qreal y,qreal w,qreal h,int xmargin = 50,int ymargin = 50)

这是一个重载函数,函数功能同(6),相当于调用ensureVisible(QRectF(x,y,w,h),xmargin,ymargin)

(8)void QGraphicsView::ensureVisible(const QGraphicsItem *item,int xmargin = 50,int ymargin = 50)

这是一个重载函数,功能同(6)调整视窗的内容,使item的内容可见

(9)QGraphicsItem *QGraphicsView::itemAt(const QPoint &pos)const

返回pos处的item

(10)QGraphicsItem *QGraphicsView::itemAt(int x,int y)const

这是一个重载函数,功能同(9),返回坐标(x,y)处的item

(11)QList<QGraphicsItem *> QGraphicsView::items()const

返回相关场景中的所有图元

(12)QList<QGraphicsItem *> QGraphicsView::items(const QPoint &pos)const

返回视图中位置pos处的项目列表

(13)QGraphicsScene *QGraphicsView::scene()const

返回当前可视化的场景,如果当前没有可视化的场景,则返回0

(14)void QGraphicsView::setScene(QGraphicsScene *scene)

设置场景scene为当前可视化场景

(15)void QGraphicsView::updateScene(const QList<QRectF> &rects)[slot]

更新场景

四、Calendar控件

1.控件位置:DisplayWidgets->Calendar 2.控件介绍:日历控件 3.控件属性设置选项
(1)name:同上 (2)font:同上 (3)selectdDate:当前日期 (4)minimumDate:该日历控件能够显示的最小日期 (5)maxmumDate:该日历控件能够显示的最大日期 (6)firstDayOfWeek:每星期的第一天 (7)gridVisible:是否显示网格 (8)dateEditEnable:是否允许编辑日历
4.常用成员函数

(1)QCalendarWidget::QCalendarWidget(QWidget *parent = 0)

构造一个父对象为parent的Calendar

(2)int QCalendarWidget::monthShown()const

但会当前显示的月份

(3)void QCalendarWidget::setCurrentPage(int year,int month)[slot]

显示给定的年份和月份

(4)void QCalendarWidget::setDateRange(const QDate &min,const QDate &max)[slot]

设置该Calendar的显示范围,最小日期为min,最大日期为max

(5)void QCalendarWidget::showSelectedDate()[slot]

显示当前选中的日期

(6)void QCalendarWidget::showToday()[slot]

显示系统当前日期

(7)int QCalendarWidget::yearShown()const

返回当前显示的年份

五、LCDNumber控件

1.控件位置:DisplayWidgets->LCDNumber

2.控件介绍:LCD数字显示框可以显示十六进制,十进制,八进制或二进制数

3.控件属性设置选项

(1)name:同上

(2)font:设置显示框字体

(3)frameShape:同上

(4)frameShadow:同上

(5)lineWidth:同上

(6)mode:设置显示格式,Qt提供十六进制、十进制、八进制、二进制格式

(7)value:该LCDNumber的值

(8)intValue:该LCDNumber的整数值

(9)numDigits:显示框最大可以显示的数字位数

4.常用成员函数

(1)QLCDNumber::QLCDNumber(QWidget *parent = 0,const char *name = 0)

构造一个名称为name,父对象为parent的LCDNumber

(2)QLCDNumber::QLCDNumber(uint numDigits,QWidget *parent = 0,const char *name = 0)

构造一个名称为name,父对象为parent和显示框最大可以显示的数字位数为numDigits的LCDNumber、

(3)void QLCDnumber::display(int num)[slot]

设置显示的值为num

(4)void QLCDNumber::display(const QString &s)[slot]

重载函数,功能同(3)显示s

(5)void QLCDNumber::display(double num)[slot]

重载函数,功能同(3),显示num

(6)int QLCDNumber::intValue()const

返回显示值的整数值,对应intValue属性

(7)int QLCDNumber::numDigits()const

返回显示框最大可以显示的数字位数,对应numDigits属性

(8)double QLCDNumber::value()const

返回该LCDNumber显示的值

六、ProgressBar控件

1.控件位置:DisplayWidgets->ProgressBar 2.控件介绍:进度条显示为一个水平进度条,一个进度条是用来给用户显示操作进度的,证明他们的应用程序还在运行,进度条控件非常常见 3.控件属性设置选项
(1)name:同上 (2)font:同上 (3)frameShape:边框样式 (4)frameShadow:边框阴影 (5)lineWidth:边框线宽 (6)progress:进度条当前的进度值
4.常用成员函数

(1)QProgressBar::QProgressBar(QWidget *parent = 0,const char *name = 0,WFlags f = 0)

构造一个名字为name,父对象为parent的ProgressBar

(2)QProgressBar::QProgressBar(int totalSteps,QWidget *parent  = 0,const char *name = 0,WFlags f = 0)

构造一个名称为name,父对象为parent和总的进度值为totalSteps的ProgressBar。

(3)int QProgressBar::progress()cosnt

返回当前进度条的进度值

(4)void QProgressBar::setProgerss(int progress)[virtual slot]

设置该进度条的当前进度值为progress

(5)void QProgressBar::reset()[slot]

把进度条恢复到初始状态

七、Line控件

1.控件位置:DisplayWidgets->Horizontal/Vertical Line 2.控件介绍:线条用来装饰界面的控件,在界面中适当添加Line控件可以使界面更加美观、清晰 3.控件属性设置选项
(1)name:同上 (2)frameShadow:plain、raised、sunken (3)lineWidth:线条线宽 (4)orientation:线条布局方向

继续阅读