Kontextmenü (Popup-Fenster) erstellen

NichtExpert

Bekanntes Mitglied
Hallo,

ich versuche momentan ein Kontextmenü zu erstellen.
Dazu soll das Kontextmenü auf meinem Panel dort erscheinen, wo ich auch mit meiner Maus einen Rechtsklick getan habe.
Wie es auch bei Windows zum Beispiel der Fall ist.

Das PopupMenü bekomme ich angezeigt, jedoch nur auf einem bestimmen Punkt und nicht variabel, je nachdem wo man draufdrückt auf dem Panel.

Mein zweites Problem ist, dass ich zum Popupmenü 2 JMenü's zur Auswahl habe. Unter einem der Menü's habe ich noch 3 JMenüItems erstellt. Diese werden jedoch nicht angezeigt.

Java:
public static void gui() {
        meinFrame.setSize(400, 400); // Größe Frame
        meinPanel.setLayout(null);


        meinPanel.addMouseListener(new MouseAdapter() {                                                 // Auf Panel Mouse-listener
            @Override
            public void mouseClicked(MouseEvent e) {
                if (SwingUtilities.isRightMouseButton(e) && e.getClickCount() == 1) {              // bei rechsklick
                    kontextmenu();                                                                                                // ausführen
                }
            }
        });




        meinFrame.add(meinPanel);
        meinFrame.setVisible(true);
        meinFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }



    public static void kontextmenu() {                                                                                             // Methode Kontextmenü
        JMenu menu = new JMenu("Menü");
        JMenuItem menuItem1 = new JMenuItem("Einstellungen");
        JMenuItem menuItem2 = new JMenuItem("Bearbeiten");
        JMenuItem menuItem3 = new JMenuItem("Ansicht");
        JMenu menu2 = new JMenu("Neu erstellen");

        menu.add(menuItem1);
        menu.add(menuItem2);
        menu.add(menuItem3);
        //menu.setVisible(true);
        //menu.isShowing();
        JPopupMenu popupMenu = new JPopupMenu();
        popupMenu.add(menu);
        popupMenu.add(menu2);
        popupMenu.setVisible(true);

        public static void main(String[] args) {
        gui();
        }
    }


Hoffe einer von euch kennt den Codefragment, der fehlt.
 
K

kneitzel

Gast
Du setzt ja auch keine Koordinaten, wo es erscheinen soll. Und Du erzeugst es auch als eigenständiges Element.... Der Weg ist also falsch ...

Ein JPopupMenu wird über show angezeigt. Show bekommt 3 Parameter: Das übergeordnete Element (meinFrame bei dir) und die Position (also z.B. vom MouseEvent getX() / getY())

Und schon funktioniert das auch richtig.

Konkret könnte es dann wie folgt aussehen:
Java:
meinPanel.addMouseListener(new MouseAdapter() {                                                 // Auf Panel Mouse-listener
            @Override
            public void mouseClicked(MouseEvent e) {
                if (SwingUtilities.isRightMouseButton(e) && e.getClickCount() == 1) {              // bei rechsklick
                    kontextmenu(meinFrame, e.getX(), e.getY());                                                                                                // ausführen
                }
            }
        });
Java:
public static void kontextmenu(JFrame frame, int x, int y) {                                                                                             // Methode Kontextmenü
        JMenu menu = new JMenu("Menue");
        JMenuItem menuItem1 = new JMenuItem("Einstellungen");
        JMenuItem menuItem2 = new JMenuItem("Bearbeiten");
        JMenuItem menuItem3 = new JMenuItem("Ansicht");
        JMenu menu2 = new JMenu("Neu erstellen");

        menu.add(menuItem1);
        menu.add(menuItem2);
        menu.add(menuItem3);
        JPopupMenu popupMenu = new JPopupMenu();
        popupMenu.add(menu);
        popupMenu.add(menu2);
        popupMenu.show(frame, x, y);
    }
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W JavaFX Kontextmenü - wie am Besten? AWT, Swing, JavaFX & SWT 6
A Swing JFileChooser mit modifiziertem Kontextmenü AWT, Swing, JavaFX & SWT 4
L Swing Kontextmenü in jTable AWT, Swing, JavaFX & SWT 8
A SWT: Kontextmenü bei einem Tab AWT, Swing, JavaFX & SWT 2
F KontextMenü auf allen Textfields im Frame AWT, Swing, JavaFX & SWT 2
M JPopupMenu - Ein vorhandenes Kontextmenü erweitern AWT, Swing, JavaFX & SWT 6
B JTree - Kontextmenü per Tastatur öffnen AWT, Swing, JavaFX & SWT 3
G Kontextmenü zum kkopieren in einer TextArea AWT, Swing, JavaFX & SWT 5
H Kontextmenü erstellen AWT, Swing, JavaFX & SWT 4
M Kontextmenü AWT, Swing, JavaFX & SWT 9
D Kontextmenü in einer JTable AWT, Swing, JavaFX & SWT 2
J GUI Programmierung Popup-Menü AWT, Swing, JavaFX & SWT 4
T Maximieren des Application-Modal Popup-Dialoges+Parent AWT, Swing, JavaFX & SWT 1
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
F Popup Menu etwas verschieben AWT, Swing, JavaFX & SWT 2
T Swing Combox Popup vergroessert - Arrow nicht mehr vorhanden! AWT, Swing, JavaFX & SWT 4
X Popup Menü nur bei besonderem Fall öffnen AWT, Swing, JavaFX & SWT 3
B Popup auf der Textcoursor-Position AWT, Swing, JavaFX & SWT 5
B Swing Submenüs im Popup anzeigen AWT, Swing, JavaFX & SWT 2
T Popup Fenster AWT, Swing, JavaFX & SWT 2
B Ladebalken in einem Popup-Fenster AWT, Swing, JavaFX & SWT 6
Kenan89 PopUp Fenster AWT, Swing, JavaFX & SWT 4
Spin Tool: Popup -Programm AWT, Swing, JavaFX & SWT 3
N Swing Frame mit GlassPane und Popup AWT, Swing, JavaFX & SWT 5
B popup in jtable AWT, Swing, JavaFX & SWT 4
C JComboBox Popup nicht öffnen AWT, Swing, JavaFX & SWT 4
K Popup in Swing AWT, Swing, JavaFX & SWT 10
O Info Popup AWT, Swing, JavaFX & SWT 9
T JTable, Popup Fester per Rechtsklick auf Zelle AWT, Swing, JavaFX & SWT 19
W Java Popup bei Win7 und Mac verschieden? AWT, Swing, JavaFX & SWT 2
Eldorado Swing Popup-Menü mit Jspinner AWT, Swing, JavaFX & SWT 4
M Swing JSlider, Popup-Box AWT, Swing, JavaFX & SWT 3
D Swing JTabbedPane, TabComponent & Popup AWT, Swing, JavaFX & SWT 4
lumo SWT CellEditor & Popup AWT, Swing, JavaFX & SWT 3
data89 PopUp-Panel bauen - aber wie? AWT, Swing, JavaFX & SWT 2
S Swing PopUp oeffnet sich nach der Methode, die erst nach Fensteraufruf gestartet wird AWT, Swing, JavaFX & SWT 3
aze JTable in Popup.Problem mit DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 9
N rechtsklick und popup setlocation AWT, Swing, JavaFX & SWT 2
C Swing JComboBox Popup sperren AWT, Swing, JavaFX & SWT 8
B Heavyweight Popup lässt keine MouseEvents durch AWT, Swing, JavaFX & SWT 2
SebSnake Popup-JFrame soll Daten an Parent-JFrame übergeben AWT, Swing, JavaFX & SWT 3
T Button des Popup-Menüs ermitteln AWT, Swing, JavaFX & SWT 4
T JComboBox nur mit Popup AWT, Swing, JavaFX & SWT 4
F Applet und Popup AWT, Swing, JavaFX & SWT 4
G Popup eines Bildes im JTable realisieren AWT, Swing, JavaFX & SWT 3
T Mouse Popup AWT, Swing, JavaFX & SWT 2
H PopUp-Fenster in einer Java Server Faces Anwendung AWT, Swing, JavaFX & SWT 4
J Popup an Cursorstelle anzeigen AWT, Swing, JavaFX & SWT 3
G Popup springt nicht in der Naehe des Klicks auf AWT, Swing, JavaFX & SWT 3
L Popup-Menu AWT, Swing, JavaFX & SWT 2
G Funktion für PopUp Menü AWT, Swing, JavaFX & SWT 32
I Popup-Trigger-Maustaste gleich beim Programmstart ermitteln? AWT, Swing, JavaFX & SWT 7
M JComboBox Popup öffnet nicht AWT, Swing, JavaFX & SWT 6
Q Popup der JComboBox AWT, Swing, JavaFX & SWT 4
S PopUp in JTable / JScrollPane AWT, Swing, JavaFX & SWT 3
S Popup auf Grafik AWT, Swing, JavaFX & SWT 18
K Popup Deluxe (Transparentes Popup)! AWT, Swing, JavaFX & SWT 8
T Popup-Menü unter Linux AWT, Swing, JavaFX & SWT 2
B Nicht rechteckige Popup Komponente AWT, Swing, JavaFX & SWT 4
Paule Popup oder Dialog-Feld mit eigenem Inhalt AWT, Swing, JavaFX & SWT 9
G Problem mit Kontextmenu(Popup Menü) AWT, Swing, JavaFX & SWT 3
A Image im Popup-Fenster AWT, Swing, JavaFX & SWT 12
K JTable als Popup in einer JComboBox? AWT, Swing, JavaFX & SWT 3
M suche geeignetes Fenster zur Anzeige AWT, Swing, JavaFX & SWT 49
berserkerdq2 Kann ich ein Rechteck mittig im Fenster halten, egal wie ich die Bildschirmgröße verändere? AWT, Swing, JavaFX & SWT 3
W 2 JTables in einem Swing-Fenster? AWT, Swing, JavaFX & SWT 5
berserkerdq2 Wie füge ich ein Bild in javafx mit dem Scenebuilder ein, das automatisch mitgezogen wird, wenn das Fenster vergrößert wird oder Vollbildmodus AWT, Swing, JavaFX & SWT 6
TheSepp Fenster um x Pixel bewegen, wenn man auf dem Knopf drückt AWT, Swing, JavaFX & SWT 10
J JavaFx PDF in einem Element in einem Fenster anzeigen. AWT, Swing, JavaFX & SWT 11
K JavaFX unterschiedliche (mehrere Fenster) in seperater Main Methode AWT, Swing, JavaFX & SWT 26
_user_q Kann man ein 2. JavaFX-Fenster auch beenden (exit) statt schließen (close) lassen? AWT, Swing, JavaFX & SWT 8
L Swing Files abspeichern mit Save as Dialog Fenster AWT, Swing, JavaFX & SWT 5
OZAN86 einfaches Fenster öffnen scheitert AWT, Swing, JavaFX & SWT 18
G Zuletzt aktives Fenster, vor dem aktuell aktiven AWT, Swing, JavaFX & SWT 2
sserio Kann man bei JavaFx ein Fenster aufkommen lassen? AWT, Swing, JavaFX & SWT 1
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
S Swing Alles beenden bei Fenster mit Scroll-Balken AWT, Swing, JavaFX & SWT 6
CptK windowClosed() nur aufrufen, wenn Fenster nicht über Button geschlossen wird AWT, Swing, JavaFX & SWT 1
W Zweites/neues Fenster durch Button öffnen AWT, Swing, JavaFX & SWT 6
CptK Fokus auf geöffnetes Zweit-Fenster setzen und Eingaben außerhalb blocken AWT, Swing, JavaFX & SWT 2
B Text mit Absatz + OK-Button, der Fenster wieder schließt AWT, Swing, JavaFX & SWT 7
MiMa JavaFX Fenster in JavaFX öffnen Schliessen (Initialisierung) AWT, Swing, JavaFX & SWT 20
L Hintergrundbild im Fenster darstellen AWT, Swing, JavaFX & SWT 9
P JavaFX Fenster wird nicht angezeigt (Mac) AWT, Swing, JavaFX & SWT 13
VPChief Buttons Reagieren erst wenn ich Fenster minimiere AWT, Swing, JavaFX & SWT 4
B JavaFX TextField Eingabe in neues Fenster übernehmen AWT, Swing, JavaFX & SWT 4
N Drag and Drop Fenster AWT, Swing, JavaFX & SWT 11
P JavaFX Zugriff auf Fenster/Layout-Container in eigenen Klassen AWT, Swing, JavaFX & SWT 5
Bluedaishi JavaFX Programm start mit zwei scenen bzw Fenster AWT, Swing, JavaFX & SWT 1
J Fenster mit Inhalten aus einem Array Füllen AWT, Swing, JavaFX & SWT 4
S Swing Fenster State Machine AWT, Swing, JavaFX & SWT 1
A Fenster genau unterhalb von JTextField anzeigen AWT, Swing, JavaFX & SWT 1
J Overlay Panel statt neues Fenster AWT, Swing, JavaFX & SWT 6
S Swing Bei start des Programmes kein Fenster zu sehen AWT, Swing, JavaFX & SWT 1
X Neues Fenster mit Button öffnen und bearbeiten AWT, Swing, JavaFX & SWT 4
platofan23 JAVAFX zweites Fenster öffnen AWT, Swing, JavaFX & SWT 2
M JavaFX Altes Fenster (FXML Datei) löschen AWT, Swing, JavaFX & SWT 16
P JavaFX Fenster lädt nicht mehr AWT, Swing, JavaFX & SWT 4
I AWT Listener während man in anderem Fenster ist AWT, Swing, JavaFX & SWT 4
S JavaFX Fenster aufkommen lassen, wenn mit der Maus über bestimmten Bereich fahren AWT, Swing, JavaFX & SWT 1

Ähnliche Java Themen

Neue Themen


Oben