2013-10-21 50 views
1

我對Qt相當陌生,並且遇到Menubar問題。我剛剛從here複製的示例代碼,並添加了菜單欄周圍,標籤Qt C++菜單欄不在Windows上顯示,但在Mac上

MenuBar{ 
Menu { 
title: "Edit" 

MenuItem { 
    text: "Cut" 
    shortcut: "Ctrl+X" 
    onTriggered: console.log("test") 
} 

MenuItem { 
    text: "Copy" 
    shortcut: "Ctrl+C" 
    onTriggered: console.log("test") 
} 

MenuItem { 
    text: "Paste" 
    shortcut: "Ctrl+V" 
    onTriggered: console.log("test") 
} 

MenuSeparator { } 

Menu { 
    title: "More Stuff" 

    MenuItem { 
     text: "Do Nothing" 
    } 
} 
} 
} 

在Mac它正常工作,但在Windows上我看不到任何菜單。有沒有人有任何想法?

在此先感謝!

回答

1

如果要將菜單欄添加到窗口,則需要設置menuBar屬性值。見this page

ApplicationWindow { 
    id: window 
    menuBar: MenuBar { 
    Menu { MenuItem {...} } 
    Menu { MenuItem {...} } 
    } 
} 

可能是它無法在Mac不要緊,因爲QMenuBar作品不同的Mac上,並自動連接到Windows。

+0

謝謝。它的工作,但只在一個ApplicationWindow {} - 標籤內,但我的main.qml的父元素是一個Rectangle {},並將您的代碼添加到我的矩形後,我得到的錯誤:無法分配到不存在的屬性「menuBar」並且我的應用程序僅以白色空白窗口開始:/ – Testerrrr

+1

看來Rectangle控件不支持菜單欄。使ApplicationWindow成爲頂層窗口,並在其中插入主Rectangle作爲中心窗口小部件。 –

相關問題