目录
一、QSpinBox-整数值输入的小部件:
1.1QSpinBox介绍:
1.2属性介绍:
1.3通用属性介绍:
1.4信号介绍:
二、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件:
2.1QDateEdit、QTimeEdit、QDateTimeEdit介绍:
2.2 通用属性介绍:
2.3QDateTimeEdit属性介绍:
2.4信号介绍:
2.5计算两个事件之间的差值:
一、QSpinBox-整数值输入的小部件:
1.1QSpinBox介绍:
- QSpinBox 是 Qt 中用于数值输入的小部件。
- 它提供了一个文本框和上下箭头按钮,用户可以通过点击箭头按钮或直接输入数字来调整数值。
1.2属性介绍:
suffix |
- 显示在值后面的文本。
- setSuffix(const QString &suffix)
- suffix() const
|
prefix |
- 显示在值前面的文本。
- setPrefix(const QString &prefix)
- prefix() const
|
minimum |
- 允许的最小值。
- setMinimum(int min)
- minimum() const
|
maximum |
- 允许的最大值。
- setMaximum(int max)
- maximum() const
|
singleStep |
- 每次点击箭头按钮时增减的步长。
- setSingleStep(int step)
- singleStep() const
|
stepType |
- 步长的类型,决定了增减值的方式(整数步长或自适应步长)。
- setStepType(QAbstractSpinBox::StepType stepType)
- stepType() const
|
value |
- 当前的值。
- setValue(int value)
- value() const
|
displayIntegerBase |
- 显示整数的禁止(如十进制、十六进制等)。
- setDisplayIntegerBase(int base)
- displayIntegerBase() const
|
1.3通用属性介绍:
wrapping |
- 是否启用环绕模式。当启用时,如果增加值超过最大值,则从最小值开始,反之亦然。
- setWrapping(bool wrap)
- wrapping() const
|
frame |
- 是否显示边框。
- setFrame(bool frame)
- hasFrame() const
|
alignment |
- 文本对齐方式。
- setAlignment(Qt::Alignment alignment)
- alignment() const
|
readOnly |
- 是否为只读模式。当设置为只读时,用户无法编辑文本框内容。
- setReadOnly(bool readOnly)
- isReadOnly() const
|
buttonSymbols |
- 控制显示按钮符号的类型(上下箭头、加减号等)。
- setButtonSymbols(QAbstractSpinBox::NoButtons/UpDownArrows/PlusMinus)
- buttonSymbols() const
|
specialValueText |
- 当值为最小值时显示的特殊文本。
- setSpecialValueText(const QString &text)
- specialValueText() const
|
accelerated |
- 是否启用加速模式。启用时,当用户按住上下按钮时,值的变化速度会加快。
- setAccelerated(bool)
- isAccelerated() const
|
correctionMode |
- 设置修正模式,控制用户输入的纠正方式。
- setCorrectionMode(QAbstractSpinBox::CorrectionMode mode)
- correctionMode() const
|
keyboardTracking |
- 是否启用键盘跟踪。启用时,值会在每次键盘输入后立即更新;禁用时,只有在编辑完成(如按下回车键或失去焦点)时才更新。
- setKeyboardTracking(bool on)
- keyboardTracking() const
|
showGroupSeparator |
- 是否显示千位分隔符(如,1,000)。
- setShowGroupSeparator(bool on)
- showGroupSeparator() const
|
1.4信号介绍:
valueChanged(int) |
- 当数值发生变化时发射此信号。传递的新值是整数类型。
|
valueChanged(const QString&) |
- 当数值发生变化时发射此信号。传递的新值是字符串类型。
|
editingFinished() |
- 当用户编辑完成(如按下回车键或旋转框失去焦点)时发射此信号。
|
二、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件:
2.1QDateEdit、QTimeEdit、QDateTimeEdit介绍:
- QDateEdit 是一个用于编辑日期的控件。它提供了一个下拉日历和手动输入的方式来选择日期。
- QTimeEdit 是一个用于编辑时间的控件。它提供了一个方便的方式来输入时间。
- QDateTimeEdit 是一个用于编辑日期和时间的控件。它结合了 QDateEdit 和 QTimeEdit 的功能。
![](https://i-blog.csdnimg.cn/direct/a9f1cd9dc4db4d8a902f4dc926195330.png)
2.2 通用属性介绍:
- 这三个控件都继承于同一个父类QAbstractSpinBox,所以他的通用属性和QSpinBox的通用属性相同。因此,上述1.3的通用属性通用适用于这三个控件。
2.3QDateTimeEdit属性介绍:
dateTime |
- 当前日期和时间。
- dateTime() const
- setDateTime(const QDateTime &dateTime)
|
date |
- 当前日期。
- date() const
- setDate(const QDate &date)
|
time |
- 当前时间。
- time() const
- setTime(const QTime &time)
|
maximumDateTime |
- 允许的最大日期和时间。
- maximumDateTime() const
- setMaximumDateTime(const QDateTime &dateTime)
|
minimumDateTime |
- 允许的最小日期和时间。
- minimumDateTime() const
- setMinimumDateTime(const QDateTime &dateTime)
|
maximumDate |
- 允许的最大日期。
- maximumDate() const
- setMaximumDate(const QDate &date)
|
minimumDate |
- 允许的最小日期。
- minimumDate() const
- setMinimumDate(const QDate &date)
|
maximumTime |
- 允许的最大时间。
- maximumTime() const
- setMaximumTime(const QTime &time)
|
minimumTime |
- 允许的最小时间。
- minimumTime() const
- setMinimumTime(const QTime &time)
|
currentSection |
- 当前编辑的部分(年、月、日、小时、分钟等)。
- currentSection() const
- setCurrentSection(QDateTimeEdit::Section section)
|
displayFormat |
- 日期和时间的显示格式。
- displayFormat() const
- setDisplayFormat(const QString &format)
|
calendarPopup |
- 是否显示日历弹出窗口。
- calendarPopup() const
- setCalendarPopup(bool enable)
|
currentSectionIndex |
- 当前编辑部分的索引。
- currentSectionIndex() const
|
timeSpec |
- 时间格式(如本地时间、UTC 等)。
- timeSpec() const
- setTimeSpec(Qt::TimeSpec spec)
|
- QDateEdit的属性就是除了和time有关的其他。
- QTimeEdit的属性就是除了和Date有关的其他。
2.4信号介绍:
dateChanged(const QDate &date) |
|
timeChanged(const QTime &time) |
|
dateTimeChanged(const QDateTime &dateTime) |
- 当日期和时间更改时发出此信号。更改其中的一个或者所有都会发出信号。
|
editingFinished() |
- 当用户完成编辑时发出此信号。移动焦点或执行其他操作。
|
2.5计算两个事件之间的差值:
- QDateTimeEdit提功了两个函数,用来计算两个时间之间的差值。
- dateTime1.daysTo(dateTime2),用于计算两个时间之间相差多少天。
- dateTime1.secsTo(dateTime2),用于计算两个时间之间相差秒。
- 由于daysTo会出现一些歧义问题,所以计算的时候建议使用secsTo获取到秒数后,执行触发计算,来算出天数。代替daysTo直接获得天数。