QT开发(十)——QT输入组件
QT中有十三中输入组件,分别是下拉列表框QComboBox、字体下拉框QFontComboBox、行编辑框QLineEdit、文本编辑框QTextEdit、无格式文本编辑框QPlainTextEdit、整数旋转框QSpinBox、小数旋转框QDoubleSpinBox、时间编辑框QTimeEdit、日期编辑框QDateEdit、日期时间编辑框QDateTimeEdit、表盘QDial、水平滚动条QScrollBar、垂直滚动条QScrollBar、水平滑动条QSlider、垂直滑动条QSlider。
一、QComboBox下拉列表框
1、QComboBox组件简介
QComboBox下拉框继承自QWidget,用于有多个选项的下拉框。
2、QComboBox组件属性
QComboBox组件属性设置选项:
A、name:该控件对应源代码中的名称
B、font:设置显示的字体
C、editable:用来获取或设置一个值,以确定ComboBox的编辑框是否可编辑,值为true是为可编辑,值为false时只读
D、currentIndex:当前选项的索引
E、maxVisibleItems:ComboBox可见的最大项目数
F、maxCount:ComboBox的最大项目数
3、QComboBox组件常用成员函数
QComboBox::QComboBox(QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent的ComboBox
QComboBox::QComboBox(bool rw,QWidget *parent = 0,const char * name = 0)
构造一个名称为name,父对象为parent的ComboBox,如果rw是true,则编辑栏可编辑,否则只能选择ComboBox项目之一
void QComboBox::clear()const
删除ComboBox中的所有项目
int QComboBox::count()const
返回ComboBox中的项目数
int QComboBox::currentItem()const
返回ComboBox中当前项目的索引
QString QComboBox::currentText()const
返回组合框的当前项目文本
void QComboBox::insertItem(const QString &t,int index = -1)
在索引index处插入一个文本为t的项目,如果index是负数,该项目将被追加到末尾
void QComboBox;:insertItem(const QPixmap &pixmap,int index = -1)
在索引index处插入一个图标为pixmap的项目,如果index为负数,该项目将被追加到末尾
void QComboBox::insertItem(const QPixmap &pixmap,const QString &text,int index = -1)
在索引index处,插入一个文本为text和图标为pixmap的项目,如果index为负数,该项目将被追加到末尾
QString QComboBox::currentText()const
返回组合框当前项目文本
void QComboBox::removeItem(int index)
删除索引为index处项目
void QComboBox::setCurrentItem(int index)[virtual]
把索引index处的项目设为当前项目
void addItem(const QString & text, const QVariant & userData = QVariant())
void addItem(const QIcon & icon, const QString & text, const QVariant & userData = QVariant())
在下拉框最后添加一项
void addItems(const QStringList & texts)
在下拉框最后添加多项
void insertSeparator ( int index )
在序号为index的项前插入分隔线
void setItemText ( int index, const QString & text )
改变序号为index项的文本。
4、QComboBox实例
#include#include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; QComboBox *combox = new QComboBox(&w); combox->addItem("1"); combox->addItem("2"); w.show(); return a.exec(); }
二、QFontComboBox组件
1、QFontComboBox组件简介
QFontComboBox字体组合框继承于QComboBox,QFontComboBox字体组合框分为两部分显示:顶部是一个允许输入文本的文本框,下面的列表框则显示字体列表项,但不能选择多项,只能选择其中一项,专门用于字体选择。
2、QFontComboBox组件属性
QFontComboBox组件属性设置选项:
A、name:同上
B、font:同上
C、editable:用来获取或设置一个值,以确定ComboBox的编辑框是否可编辑,值为true时为可编辑,值为false时为只读
D、currentIndex:当前选项的索引
E、currentFont:当前字体
F、maxVisibleItems:ComboBox可见的最大项目数
G、maxCOunt:ComboBox的最大项目数
3、QFontComboBox组件常用成员函数
QFontComboBox::QFontComboBox(QWidget *parent = 0)
构造一个父对象为parent的Font ComboBox
QFont currentFont() const
返回当前选择的字体
4、QFontComboBox实例
#include#include #include #include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; QFontComboBox *fontcom = new QFontComboBox(&w); QFont font = fontcom->currentFont(); qDebug() << font; w.show(); return a.exec(); }
三、QLineEdit组件
1、QLineEdit组件简介
QLineEdit组件行编辑是一种常用且比较容易掌握的控件,应用程序主要用它来接收输入文字信息。
2、QLineEdit组件属性
QLineEdit组件属性设置选项
A、name:同上
B、text:同上
C、font:同上
D、ReadOnly:用来获取或设置一个值,该值指示文本框中的文本是否为只读,值为true时为只读,值为false为可读写
3、QLineEdit组件常用成员函数
QLineEidt::QLineEdit(QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent的LineEdit
QLineEdit::QLineEdit(const QString &contents,QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent和内容为contents的LineEdit
void QLineEdit::clear()[virtual slot]
清除行编辑的内容
bool QLineEdit::isReadOnly()const
如果行编辑室只读则返回true,否则返回false
void QLineEdit::setReadOnly(bool)[virtual slot]
设置行编辑的读写属性
void QLineEdit::setText(const QString &)[virtual slot]
设置行编辑的文本
QString QLineEdit::text()const
返回行编辑的文本
四、QTextEdit组件
1、QTextEdit组件简介
QTextEdit文本编辑组件主要用于输入文本信息或显示文本信息,QTextEdit支持富文本。
五、QPlainTextEdit组件
1、QPlainTextEdit组件简介
QPlainTextEdit控件中文称作“文本编辑“,PlainTextEdit和TextEdit控件只是样式不同,可以通过设置属性来改变样式。
2、QPlainTextEdit组件常用成员函数
QPlainTextEdit::QPlainTextEdit(QWidget *parent = 0)
QPlainTextEdit::QPlainTextEdit(const QString &text,QWidget *parent = 0)
六、QSpinBox组件
1、QSpinBox组件简介
QSpinBox整数旋转框继承自QAbstractSpinBox,允许用户通过单击向上/向下按钮来增加/减少当前显示的值,也可以直接输入旋转框的值,如果值是直接输入选择框,一般需要按Enter键确认新值。
2、QSpinBox组件属性
QSpinBox组件属性设置选项
A、name:同上
B、font:同上
C、value:SpinBox默认值
D、lineStep;使用箭头来改变选择框的值的递增/递减量
E、minValue:SpinBox的最小值
F、maxValue:SpinBox的最大值
G、prefix:SpinBox的前缀字符串
H、Suffix:SpinBox的后缀字符串
3、QSpinBox组件常用成员函数
QSpinBox::QSpinBox(QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent的SpinBox
QSpinBox::QSpinBox(int intValue,int maxValue,int step = 1,QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent,最小值为minValue,最大值为maxValue和增/减量为step的SpinBox
void QSpinBox::stepDown()[virtural slot]
把旋转框的值减少一个lineStep,等同于单击向下按钮
void QSpinBox::stepUp()[virtual slot]
把旋转框的值增加一个lineStep,等于单击向上按钮
QString QSpinBox::text()const
返回旋转框的文本,包括前缀和后缀
int QSpinBox::value()const
返回旋转框的值
void QSpinBox::setValue(int value)[virtual slot]
设置旋转框的值
void QSpinBox::setLineStep(int)
设置旋转框的增/减量
void QSpinBox::setMaxValue(int)
设置旋转框的最大值
void QSpinBox::setMinValue(int)
设置旋转框的最小值
void QSpinBox::setPrefix(const QString &text)[virtual slot]
设置旋转框的前缀字符
void QSpinBox::setSuffix(const QString &text)[virtual slot]
设置旋转框的后缀字符
void valueChanged(int i)
void valueChanged(const QString & text)
信号
4、QSpinBox实例
#include#include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; QSpinBox *spinbox = new QSpinBox(&w); spinbox->setSingleStep(2); spinbox->setRange(0,100); //设置变化范围 spinbox->setSuffix("km"); //设置输出显示后缀 spinbox->setPrefix("distance:"); //设置输出显示前缀 spinbox->resize(200,40); //设置大小 spinbox->setValue(50); //设置初始值 w.show(); return a.exec(); }
七、QDoubleSpinBox组件
1、QDoubleSpinBox组件简介
QDoubleSpinBox小数旋转框,继承自QSpinBox,可以表示小数,其他与QSpinBox功能相同
2、QDoubleSpinBox组件属性
QDoubleSpinBox组件属性设置选项
A、name:同上
B、font:同上
C、value:SpinBox默认值
D、lineStep:同上
E、minValue:同上
F、maxValue:同上
G、prefix:SpinBox的前缀字符
H、Suffix:SpinBox的后缀字符
I、decimals:SpinBox的小数位数
3、QDoubleSpinBox组件常用成员函数
QDoubleSpinBox::QDoubleSpinBox(QWidget *parent = 0)
构造一个父对象为parent的Double SpinBox
八、QSlider组件
1、QSlider组件
QSlider滑动条继承自QAbstractSlider,有Horizontal/Vertical Slider两种布局方式,两种滑动条布局样式之间可以相互转换,只需改变orientation属性即可。
2、QSlider组件属性
QSlider组件属性设置选项
A、name:同上
B、font:同上
C、lineStep:滑动条值的最小跨度
D、value:滑动条的值
E、minValue;滑动条的最小值
F、maxValue:滑动条的最大值
G、orientation:滑动条的布局方向,Qt提供Horizontal/Vertical Slider两种选择
3、QSlider组件常用成员函数
QSlider::QSlider(QWidget *parent,const char *name =0)
构造一个名称为name,父对象为parent的Slider
QSlider::QSlider(Qrientation orientation,QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent,布局方向为orientation的Slider
QSlider::QSlider(int minValue,int maxValue,int pageStep,int value,Orientation orientation,QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent,布局方向为orientation,最大值为maxValue,最小值为minValue,页步长为pageStep和值为value的Slider
void QSlider::setValue(int v)[virtual slot]
设置该滑动条的值为v
int QSlider::value()const
返回滑动条的值
4、QSlider实例
#include#include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; QSlider *slider = new QSlider(Qt::Horizontal, &w); slider->setMaximum(100); slider->setMinimum(0); slider->setValue(50); w.show(); return a.exec(); }
九、QDial组件
1、QDial组件简介
QDial表盘组件继承自QAbstractSlider,可用来描述各式各样的仪表盘样式。
2、QDial组件属性
QDial组件属性设置选项
A、name:同上
B、font:同上
C、lineStep:表盘值的最小跨度
D、value:表盘的值
E、minValue:表盘的最小值
F、maxValue:表盘的最大值
G、notchTarget:表盘的刻度
H、notchesVisible:是否显示表盘刻度,值为true时显示,否则不显示
3、QDial组件常用成员函数
QDial::QDial(QWidget *parent = 0,cosnt char *name = 0,WFlags f = 0)
构造一个名称为name,父对象为parent的Dial
QDial::QDial(int minValue,int maxValue,int pageStep,int value,QWidget *parent = 0,cosnt char *name = 0
构造一个名称为name,父对象为parent,最大值为maxValue,最小值为minValue,步长为pageStep,值为value的Dial
void QDial::setValue(int v)[virtual slot]
设置仪表盘的值为v
int QDial::value()const
返回表盘的值
void QDial::setNotchesVisible(bool visible)
设置表盘刻度是否可见
十、QScrollBar滚动条
1、QScrollBar组件简介
QScrollBar滚动条继承自QAbstractSlider,提供垂直和水平的布局样式,滚动条可以使用户能够查看比窗口组件能显示较多的内容。
2、QScrollBar组件属性
QScrollBar组件属性设置选项
A、name:同上
B、font:设置滑动条上的字体
C、lineStep:滑动条的最小跨度
D、value:滑动条的值
E、minValue:滑动条的最小值
F、maxValue:滑动条的最大值
G、orientation:滑动条的布局方向,Qt提供Horizontal/Vertical两种
3、QScrollBar组件常用成员函数
QScrollBar::QScrollBar(QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent的ScrollBar
QScrollBar::QScrollBar(Orientation orientation,QWidget *parent,const char *name = 0)
构造一个名称为name,父对象为parent,布局为orientation的ScrollBar
void QAbstractSlider::setValue(int v)[slot]
设置该滚动条的值为v
int QAbstractSlider::value()const
返回滚动条的值
void QAbstractSlider::setOrientation(Qt::Orientation)
设置滚动条的布局样式
十一、QDateEdit组件
1、QDateEdit组件简介
QDateEdit日期编辑框继承自 QDateTimeEdit,用于编辑和显示日期的组件
2、QDateEdit组件属性
QDateEdit组件属性设置选项:
A、name:同上
B、font:同上
C、date:显示的日期
D、minValue:日期的最小值
E、maxValue:日期的最大字画
F、order:设置日期显示格式,Qt提供的格式有YMD、YDM、DMY
3、QDateEdit组件常用成员函数
QDateEdit::QDateEdit(QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent的DateEdit
QDateEdit::QDateEdit(const QDate &date,QWidget *parent = 0,const char *name = 0)
构造一个名字为name,父对象为parent,当前显示日期为date的DateEdit,
QDate QDateEdit::date()const
返回DateEdit控件的Date值
void QDateEdit::setDate(const QDate &date)[virtual]
设置DateEdit控件Date的值为date
void QDateEdit::setDay(int day)[virtual protected]
设置DateEdit控件Date的Day为day,必须确保day为有效值
void QDateEdit::setMonth(int month)[virtual protected]
设置DateEdit控件Date的Month为month,必须确保month为有效值
void QDateEdit::setYear(int year)[virtual protected]
设置DateEdit控件Date的Year为year,必须确保year为有效值
十二、QTimeEdit组件
1、QTimeEdit组件简介
QTimeEdit时间编辑框组件继承自 QDateTimeEdit,用来编辑和显示时间的组件。
2、QTimeEdit组件属性
QTimeEdit组件属性设置选项:
A、name:同上
B、font:设置文本框的字体
C、time:显示的日期
D、minValue:时间的最小值
E、maxValue:时间的最大值
F、display:设置时间显示格式
3、QTimeEdit组件常用成员函数
QTimeEdit::QTimeEdit(QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent的TimeEdit
QTimeEdit::QTimeEdit(const QTime &time,QWidget *parent = 0,const char *name = 0)
构造一个名称为name,父对象为parent,当前显示时间为time的TimeEdit
QTime QTimeEdit::time()const
返回TimeEdit控件Time的值
void QTimeEdit::setTime(const QTime &time)[virtural]
设置TimeEdit控件为Time的值time
void QTimeEdit::setHour(int h)[virtural protected]
设置TimeEdit控件Time的Hour为h,必须确保h为有效值
void QTimeEdit::setMinute(int m)[virtual protected]
设置TimeEdit控件Time的Minute为m,必须确保m为有效值
void QTimeEdit::setSecond(int s)[virtual protected]
设置TimeEdit控件Time的Second为s,必须确保s为有效值
十三、QDateTimeEdit组件
1、QDateTimeEdit组件简介
QDateTimeEdit日期时间编辑框是一个用来编辑和显示日期和时间的组件,继承自QAbstractSpinBox。
2、QDateTimeEdit组件属性
QDateTimeEdit组件属性设置选项:
A、name:同上
B、font:设置文本框的字体
C、datetime:显示的日期和时间
3、QDateTimeEdit主要成员函数
QDateTimeEdit(QWidget * parent = 0)
QDateTimeEdit(const QDateTime & datetime, QWidget * parent = 0)
QDateTimeEdit(const QDate & date, QWidget * parent = 0)
QDateTimeEdit(const QTime & time, QWidget * parent = 0)
构造函数
void dateChanged(const QDate & date) [signal]
void dateTimeChanged(const QDateTime & datetime) [signal]
void timeChanged(const QTime & time) [signal]
Void setDate(const QDate & date) [slot]
Void setDateTime(const QDateTime & dateTime) [slot]
Void setTime(const QTime & time) [slot]
void setDisplayFormat(const QString & format)
设置日期时间的显示格式
QDate date() const
QDateTime dateTime() const
QTime time() const
4、QDateTimeEdit实例
#include#include #include int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget w; QDateTimeEdit *datetime = new QDateTimeEdit(&w); datetime->setTime(QTime::currentTime()); datetime->setDate(QDate::currentDate()); w.show(); return a.exec(); }