我正在嘗試向我的 QML 添加鍵盤快捷鍵,但如果不重復邏輯,我很難讓它作業。下面是代碼,
Controls.Button {
id:sendAction
Shortcut {
sequence: "Ctrl Return"
onActivated: parent.trigger()
}
onPressed: {call function}
}
如果我重復呼叫該函式,則鍵盤快捷鍵可以作業,但parent.trigger()它會失敗,因為觸發器不是按鈕的屬性。我嘗試查找可以在快捷方式中呼叫哪些函式來觸發父級,但檔案很簡單。基本上我需要的是添加什么來onActivated觸發onPressed而不重復函式呼叫。
uj5u.com熱心網友回復:
你試過按下信號嗎?
onActivated: parent.pressed()
https://doc.qt.io/qt-5/qml-qtquick-controls2-abstractbutton.html#pressed-signal
uj5u.com熱心網友回復:
Solved with the code below.
Item {
Shortcut{
id: sendShortcut
sequences: ["Ctrl Enter", "Ctrl Return"]
onActivated: sendAction.action.trigger()
}
}
Controls.Button {
id:sendAction
action: Controls.Action {
onTriggered{
call function
}
}
onPressed: action.trigger()
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/433900.html
