在Qt程序中显示实际时间
在在Qt程序中显示实际时间,qt,time,signals,slot,Qt,Time,Signals,Slot,在主窗口的标题中显示实际时间(Hh:mm:ss)的简单方法是什么? 使用插槽和信号技术 创建一个间隔1秒的QTimer(例如,100毫秒以获得更高的精度),将其超时信号连接到插槽。在插槽中,使用QTime::currentTime()静态函数获取当前时间,使用toString将其转换为字符串,并将其分配给GUI元素(例如标签)。创建一个间隔为1秒的QTimer,或为更准确起见,将其超时信号连接到插槽。在插槽中,使用QTime::currentTime()静态函数获取当前时间,使用toString
主窗口的标题中显示实际时间(Hh:mm:ss)的简单方法是什么?
使用插槽和信号技术 创建一个间隔1秒的QTimer
(例如,100毫秒以获得更高的精度),将其超时信号连接到插槽。在插槽中,使用QTime::currentTime()
静态函数获取当前时间,使用toString
将其转换为字符串,并将其分配给GUI元素(例如标签)。创建一个间隔为1秒的QTimer
,或为更准确起见,将其超时信号连接到插槽。在插槽中,使用QTime::currentTime()
静态函数获取当前时间,使用toString
将其转换为字符串,并将其分配给GUI元素(例如标签)。我正在构建答案。您可以使用任何QObject
提供的timerEvent()
,而不是使用用户定义的QTimer
和连接信号/插槽。基本上,它在引擎盖下也可以这样做,但可以节省大量的打字时间。这看起来像这样:
class MainWindow : public QMainWindow
{
public:
MainWindow();
protected:
void timerEvent(QTimerEvent *event);
};
MainWindow::MainWindow()
{
startTimer(1000); // 1-second timer
}
void MainWindow::timerEvent(QTimerEvent * event)
{
setWindowTitle(QTime::currentTime().toString("hh:mm:ss"));
}
我在建立我的答案。您可以使用任何QObject
提供的timerEvent()
,而不是使用用户定义的QTimer
和连接信号/插槽。基本上,它在引擎盖下也可以这样做,但可以节省大量的打字时间。这看起来像这样:
class MainWindow : public QMainWindow
{
public:
MainWindow();
protected:
void timerEvent(QTimerEvent *event);
};
MainWindow::MainWindow()
{
startTimer(1000); // 1-second timer
}
void MainWindow::timerEvent(QTimerEvent * event)
{
setWindowTitle(QTime::currentTime().toString("hh:mm:ss"));
}
好的,不知道那件事好的,不知道那件事