Frage

Ich habe in meiner Java Swing-Anwendung ein Hauptfenster mit einem JButton erstellt. Ich habe auf diese Schaltfläche hinzugefügt eine Ereignis-Listener-Klasse (die Umsetzung die Action Schnittstelle), die jedesmal, wenn die Schaltfläche geklickt wird, startet ein „Pop-up“ -Fenster. Das Verfahren funktioniert gut, wenn die Schaltfläche geklickt wird, außer wenn die Taste zum ersten Mal angeklickt wird, da er nichts tut. Hat jemand den Grund für ein solches Verhalten wissen?

War es hilfreich?

Lösung

Ein einfacher Weg ist vielleicht einen AbstractAction bereitzustellen. Sie könnten die unten beschriebene Verfahren versuchen. (Er zeigt ein Popup-Fenster, wenn die Schaltfläche geklickt wird.)

import java.awt.*;
import java.awt.event.ActionEvent;
import javax.swing.*;
public class FrameTest {
    public static void main(String[] args) {
        JFrame jf = new JFrame("Demo");
        Container cp = jf.getContentPane();
        cp.setLayout(new FlowLayout());
        cp.add(new JButton(new AbstractAction("Button Text") {
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, "Hello World");
            }
        }));
        jf.setSize(200, 200);
        jf.setVisible(true);
    }
}

Andere Tipps

Posting den Code der Event-Handler als auch, wie Sie es auf die Schaltfläche könnte helfen, sind zu befestigen. Sie können einen kurzen Blick auf diese nehmen wollen Sun Tutorial

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top