2017-01-04 9 views
1

に取り組んでいません。 LinuxのQt 5.7問題を示す簡単な例:Shorcut StandardKey.PreviousChildは私が<kbd>Ctrlキー+</kbd><kbd>Shiftキー</kbd> + <kbd>タブ</kbd>ショートカットをしようとしている、それが動作していないのLinux

import QtQuick 2.7 
import QtQuick.Controls 2.0 
import QtQuick.Layouts 1.0 

ApplicationWindow { 
    visible: true 
    width: 640 
    height: 480 
    title: qsTr("Hello World") 

    Shortcut { 
     sequence: StandardKey.PreviousChild 
     onActivated: { 
      console.log("prev child") 
     } 
    } 

    Shortcut { 
     sequence: StandardKey.NextChild 
     onActivated: { 
      console.log("next child") 
     } 
    } 

} 

私が間違っていることはありますか?

答えて

0

あなたは何も間違っていると思います。それは私にとってもうまくいかない。私はこれを読んでhttp://doc-snapshots.qt.io/qt5-5.7/qkeysequence.html#keyboard-layout-issuesしかしそれでも解決できません。

グローバルキーボード設定でCtrl+Shift+Tabのショートカットキーの組み合わせが見つかりません。

ショートカットキーシーケンスを直接ハードコードすると、次のようなハックが私の目的のために機能しますsequence: "Ctrl+Shift+Tab"以下のようになります。

import QtQuick 2.7 
import QtQuick.Controls 2.0 
import QtQuick.Layouts 1.0 

ApplicationWindow { 
    visible: true 
    width: 640 
    height: 480 
    title: qsTr("Hello World") 

    // Does not work 
    Shortcut { 
     sequence: StandardKey.PreviousChild 
     onActivated: { 
      console.log("prev child") 
     } 
    } 

    // Works but it is a hack 
    Shortcut { 
     sequence: "Ctrl+Shift+Tab" 
     onActivated: { 
      console.log("hard coded pre child") 
     } 
    } 

    Shortcut { 
     sequence: StandardKey.NextChild 
     onActivated: { 
      console.log("next child") 
     } 
    } 
} 
関連する問題

 関連する問題