假設我有一個QSpinBox,其值爲123.45。如果我手動編輯它並開始擦除這五個值,則爲值123.4激發valueChanged。如果我繼續刪除這四個,則會再次發生。QSpinBox ValueChanged被多次觸發
而且如果我在完成編輯後按Enter鍵,它也會被觸發。
我想問題是我應該使用void QAbstractSpinBox :: editingFinished()而不是valueChanged,但它看起來像valueChanged是推薦的方法,因爲在我的oppinion中有更多的示例ans用法,所以我想確保對這個。
有什麼想法?
關於'editingFinished'和'valueChanged'與禁用'keyboardTracking'之間區別的另外一件事情。 只有當焦點丟失時纔會發出'editingFinished'。用戶可以將焦點設置爲'QSpinBox'並開始滾動。如果您在滾動期間需要更新某些內容,請使用'valueChanged'。在大多數情況下,這是最好的方法。 – Vladislav 2017-07-26 10:13:10