QT之二級菜單(二級菜單的箭頭可以使用QSS設置圖片)


QT之二級菜單

 

 

開場白

今天我們一起來了解下,在我們QT中,二級菜單是如何實現的,在上篇我們學習了QT之系統托盤QT之自定義菜單QT之樣式styleSheet。今天我們在這基礎上,增加二級菜單的功能。

效果圖

menu

大家注意下這里箭頭,不是用的默認效果哦,還是自定義的好看哈!O(∩_∩)下面這張圖示是默認的。 
這里寫圖片描述

上代碼

void SysTray::addSysTrayMenu() { CustomMenu* customMenu = new CustomMenu(m_parent); customMenu->addCustomMenu("onGame", TRAY_ICON, tr("onGame")); customMenu->addSeparator(); customMenu->addCustomMenu("onShow", TRAY_ICON, tr("onShow")); customMenu->addSeparator(); customMenu->addCustomMenu("onQuit", CLOSE_MENU, tr("onQuit")); //子菜單添加和主菜單都是一樣流程。 CustomMenu* customSubMenu = new CustomMenu(m_parent); customSubMenu->addCustomMenu("onBottom", TRAY_ICON_ONDNF, tr("onBottom")); customSubMenu->addCustomMenu("onMusic", TRAY_ICON_ONMUSIC, tr("onMusic")); customSubMenu->addCustomMenu("onFire", TRAY_ICON_ONFIRE, tr("onFire")); customSubMenu->addCustomMenu("onCar", TRAY_ICON_ONCAR, tr("onCar")); customSubMenu->addCustomMenu("onLol", TRAY_ICON_ONLOL, tr("onLol")); //關鍵在這里,為QQ游戲添加子菜單。 customMenu->getAction("onGame")->setMenu(customSubMenu); connect(customMenu->getAction("onShow"), SIGNAL(triggered(bool)), m_parent, SLOT(onShowNormal())); connect(customMenu->getAction("onQuit"), SIGNAL(triggered(bool)), m_parent, SLOT(onShowQuit())); customMenu->exec(QCursor::pos()); delete customMenu; delete customSubMenu; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
//自定義效果圖 QMenu { border-width:2; border-image:url(:/Demo/Resources/common_menuborder.png); } QMenu::item { padding: 6px 24px 6px 28px; } QMenu::icon { padding: 0px 0px 0px 9px; } QMenu::separator { margin-left:24; margin-right:4; border-image: url(:/Demo/Resources/menu_separate.png); } QMenu::item:selected { border-image:url(:/Demo/Resources/menu_hover.png); padding: 6px 24px 6px 28px; } QMenu::item:hover { border-image:url(:/Demo/Resources/menu_hover.png); padding: 6px 24px 6px 28px; } QMenu::right-arrow { image: url(:/Demo/Resources/common/arrow_up.png); }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

可參考文章

QT之系統托盤 
QT之自定義菜單 
QT之樣式styleSheet

下代碼

QT二級菜單

結尾

只為記錄,只為分享! 願所寫能對你有所幫助。Good Good Study, Day Day Up!

 

http://blog.csdn.net/ly305750665/article/details/53769697


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM