首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

SWT 選單編程完全指南:MenuBar、下拉、彈出、快捷鍵與監聽器

     編輯:Java 相關知識

建立 MenuBar (頂層選單欄)

Menu menuBar = new Menu(shell, SWT.BAR); // 必須 SWT.BAR,parent 為 shell
shell.setMenuBar(menuBar);

加入頂層項目 (含下拉子選單)

MenuItem fileItem = new MenuItem(menuBar, SWT.CASCADE); // 必須 CASCADE 才能掛下拉
fileItem.setText("File");

Menu fileMenu = new Menu(shell, SWT.DROP_DOWN); // 子選單風格 DROP_DOWN
fileItem.setMenu(fileMenu);

在下拉選單加入可點擊項目

MenuItem actionItem = new MenuItem(fileMenu, SWT.PUSH);
actionItem.setText("Action");
actionItem.addListener(SWT.Selection, e -> System.out.println("Action Performed"));

MenuItem 風格詳解

風格用途備註
PUSH一般命令按鈕最常用
CHECK核取方塊式可切換選中狀態
RADIO單選鈕式同組互斥
SEPARATOR分隔線無文字/行為
CASCADE含子選單需再 setMenu(subMenu)

多層級子選單 (CASCADE 遞歸)

MenuItem cascadeItem = new MenuItem(fileMenu, SWT.CASCADE);
cascadeItem.setText("Cascade");
Menu subMenu = new Menu(shell, SWT.DROP_DOWN);
cascadeItem.setMenu(subMenu);

MenuItem subAction = new MenuItem(subMenu, SWT.PUSH);
subAction.setText("&SubAction\tCtrl+S"); // & 標記助憶鍵 S
subAction.setAccelerator(SWT.CTRL + 'S'); // 真正快捷鍵

常用監聽器

  • MenuListener:監聽選單顯示/隱藏 (menuShown/menuHidden),作用於 Menu。
  • ArmListener:滑鼠/鍵盤移入項目但未點選時觸發 (widgetArmed)。
  • HelpListener:按 F1/Help 鍵觸發 (helpRequested)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved