Qt学習ノート:QTimerとQTime

4262 ワード

QTimerはタイマークラスです.その使用は3つのステップに分けられ、オブジェクトを作成し、signalとslot関数を接続し、start() QTimer *timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(update())); timer->start(1000);
  • 1
  • 2
  • 3
  • ここで、SIGNAL(timeout())は、タイマが終了するたびに、タイマがゼロに戻り、再タイマされ、slot関数をアクティブ化する信号が送信されることを示す.timer->start(1000);の中の1000は、1000ミリ秒という意味で、timeoutごとの時間間隔が1000 msであることを示しています.
    このタイマーを一度だけ計時したい場合は、void setSingleShot(bool singleShot)関数を使用する必要があります. QTimer *timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(update())); timer->setsetSingleShot(true) timer->start(60000);
  • 1
  • 2
  • 3
  • 4
  • これでタイマーは1分だけカウントダウンして終了します.
    もちろんタイムサイクルを変えることもできますvoid setInterval(int msec)
  • 1
  • QTime Class


    QTimeはユーザーに時間関数を提供し、QTimerとの違いは時計とストップウォッチの違いと同じです.
    QTimeは主に時間の操作に用いられ,ユーザが時間の変換と計算を容易にする多くの関数を提供した.
    を選択します.
    名前
    説明
    QTime()
    時間0のオブジェクトを作成
    QTime(int h, int m, int s = 0, int ms = 0)
    初期時間を持つオブジェクトを作成
    QTime
    addMSecs(int ms) const
    現在の時間に基づいてmsミリ秒を増加し、msは負にすることができる.
    QTime
    addSecs(int s) const
    現在の時間に基づいてs秒を増加し、sは負にすることができる.
    int
    hour() const
    戻り時間
    int
    minute() const
    戻る分
    int
    second() const
    戻る秒
    int
    msec() const
    ミリ秒を返す
    bool
    isValid() const
    現在のオブジェクトの時間が有効かどうかを判断するには、1日25時間も存在しないし、1分61秒も存在しない
    bool
    isValid(int h, int m, int s, int ms = 0)
    入力した時間が有効かどうかを判断する
    int
    msecsTo(const QTime & t) const
    距離時間tのミリ秒数を計算し、tが現在の時間より早い場合は負
    int
    secsTo(const QTime & t) const
    距離時間tの秒数を算出する
    bool
    setHMS(int h, int m, int s, int ms = 0)
    標準HMS時間を設定し、標準に合致しない場合はfalseに戻る
    次は最も重要ないくつかです
    void
    start()
    現在のシステム時間を現在の時間として記録
    int
    restart()
    現在のシステム時間を現在の時間として記録し、前回のコールstart()またはrestart()関数間隔からミリ秒数を返します.
    int
    elapsed() const
    最後のコールstart()またはrestart()関数から間隔を計算するミリ秒数は、タイマに相当します.
    QString
    toString(const QString & format) const
    時間を特定の文字列フォーマットに変換
    QString
    toString(Qt::DateFormat format = Qt::TextDate) const
    Qt::DateFormat形式で変換
    QTime
    fromString(const QString & string, Qt::DateFormat format = Qt::TextDate)
    Qt::DateFormatからQTimeオブジェクトへの変換
    QTime
    fromString(const QString & string, const QString & format)
    特定の文字列フォーマットからQTimeオブジェクトに変換
    QTime
    currentTime()
    現在のシステム時間を取得
    また、const QString&formatには、以下のような特別な説明が必要です.
    Expression
    Output
    h
    the hour without a leading zero (0 to 23 or 1 to 12 if AM/PM display)
    hh
    the hour with a leading zero (00 to 23 or 01 to 12 if AM/PM display)
    H
    the hour without a leading zero (0 to 23, even with AM/PM display)
    HH
    the hour with a leading zero (00 to 23, even with AM/PM display)
    m
    the minute without a leading zero (0 to 59)
    mm
    the minute with a leading zero (00 to 59)
    s
    the second without a leading zero (0 to 59)
    ss
    the second with a leading zero (00 to 59)
    z
    the milliseconds without leading zeroes (0 to 999)
    zzz
    the milliseconds with leading zeroes (000 to 999)
    AP
    interpret as an AM/PM time. AP must be either “AM” or “PM”.
    ap
    Interpret as an AM/PM time. ap must be either “am” or “pm”.
    t
    the timezone (for example “CEST”)
    例:
    Format
    Result
    hh:mm:ss.zzz
    14:13:09.042
    h:m:s ap
    2:13:9 pm
    H:m:s a
    14:13:9 pm
    Qt::DateFormatはまた多くの種類に分けられ、例えばQt::TextDate、Qt::ISO Dateなど、詳しくは公式の説明を参照してください.ここでは一つ一つ指摘しません.
    転載先:https://blog.csdn.net/founderznd/article/details/51442629