您的位置:首页 > 健康 > 养生 > Qt:12.输入类控件(QSpinBox-整数值输入的小部件、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件)

Qt:12.输入类控件(QSpinBox-整数值输入的小部件、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件)

2024/12/23 9:13:58 来源:https://blog.csdn.net/weixin_63716012/article/details/140306628  浏览:    关键词:Qt:12.输入类控件(QSpinBox-整数值输入的小部件、QDateEdit、QTimeEdit、QDateTimeEdit- 日期和时间输入的控件)

目录

一、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 的功能。

        

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直接获得天数。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com