J
JavaDev
Registriert
Thread Starter
- Dabei seit
- 30.10.2012
- Beiträge
- 2
- Reaktionspunkte
- 0
Sehr geehrte Community!
Ich würde gerne ein kleines Programm schreiben und bin dabei auf ein Problem gestoßen.
Mein Anliegen wäre die Mac OS X Menüleiste. Man kann darin das Menü des Programmes einfach mit setJMenuBar(Menü); in die Mac Menüleiste auslagern.
Dies funktioniert derzeit einwandfrei. Mein Problem allerdings ist, dass ich gerne wie alle Mac Programme den Shortcut für den Befehl im Menü anzeigen lassen möchte.
Ich habe lange in google gesucht jedoch nur dies gefunden:
Geladen wird dieser Code mit:
Leider funktioniert das bei mir aus irgendeinem Grund nicht.
Link zur Apple developer website wo ich dies gefunden habe: https://developer.apple.com/library/mac/#documentation/Java/Conceptual/Java14Development/07-NativePlatformIntegration/NativePlatformIntegration.html#//apple_ref/doc/uid/TP40001909-SW1
Mein verwendetes Betriebssystem ist Mac OS X 10.8.2
Eine Lösung wäre sehr nett.
Danke schon einmal im Voraus.
Ich würde gerne ein kleines Programm schreiben und bin dabei auf ein Problem gestoßen.
Mein Anliegen wäre die Mac OS X Menüleiste. Man kann darin das Menü des Programmes einfach mit setJMenuBar(Menü); in die Mac Menüleiste auslagern.
Dies funktioniert derzeit einwandfrei. Mein Problem allerdings ist, dass ich gerne wie alle Mac Programme den Shortcut für den Befehl im Menü anzeigen lassen möchte.
Ich habe lange in google gesucht jedoch nur dies gefunden:
Code:
JMenuItem saveAsItem = new JMenuItem("Save As...");
saveAsItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, (Toolkit.getDefaultToolkit().getMenuShortcutKeyMask())));
saveAsItem.addActionListener(new ActionListener( ) {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "Save As...") ;
}
});
Datei.add(saveAsItem);
Code:
private static void initMenu() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
System.setProperty("apple.laf.useScreenMenuBar", "true"); //Menübar aktivieren
System.setProperty("com.apple.mrj.application.apple.menu.about.name", "Test");
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
frame.setJMenuBar(Menu.initMenu()); //Menü initialisieren
}
catch(Exception e) {
frame.add(Menu.initMenu(), BorderLayout.NORTH); //Menü in das Programm direkt laden falls ein Fehler auftritt
}
}
});
}
Link zur Apple developer website wo ich dies gefunden habe: https://developer.apple.com/library/mac/#documentation/Java/Conceptual/Java14Development/07-NativePlatformIntegration/NativePlatformIntegration.html#//apple_ref/doc/uid/TP40001909-SW1
Mein verwendetes Betriebssystem ist Mac OS X 10.8.2
Eine Lösung wäre sehr nett.
Danke schon einmal im Voraus.
Zuletzt bearbeitet: