FileDocCategorySizeDatePackage
FocusEventDemo.javaAPI DocExample4978Tue Dec 12 18:58:54 GMT 2000None

FocusEventDemo

public class FocusEventDemo extends JApplet implements ActionListener, FocusListener

Fields Summary
JTextArea
display
FocusWindow
window
JButton
b1
JButton
b2
static final String
SHOW
static final String
CLEAR
static final String
newline
Constructors Summary
Methods Summary
public voidactionPerformed(java.awt.event.ActionEvent e)

        if (e.getActionCommand() == SHOW) {
            window.pack();
            window.setVisible(true);
        } else { //CLEAR
            display.setText("");
        }
    
voiddisplayMessage(java.lang.String prefix, java.awt.event.FocusEvent e)

        display.append(prefix
                       + ": "
                       + e.getComponent()
                       + newline); 
    
public voidfocusGained(java.awt.event.FocusEvent e)

        displayMessage("Focus gained", e);
    
public voidfocusLost(java.awt.event.FocusEvent e)

        displayMessage("Focus lost", e);
    
public voidinit()


       
        b1 = new JButton("Click to bring up a window.");
        b1.setActionCommand(SHOW);
        b1.addActionListener(this);

        b2 = new JButton("Click to clear the display.");
        b2.setActionCommand(CLEAR);
        b2.addActionListener(this);

        display = new JTextArea();
        display.setEditable(false);
        JScrollPane scrollPane = new JScrollPane(display);
        scrollPane.setPreferredSize(new Dimension(375, 125));
                                
        JPanel contentPane = new JPanel();
        contentPane.setLayout(new BorderLayout());
        contentPane.add(b1, BorderLayout.NORTH);
        contentPane.add(scrollPane, BorderLayout.CENTER);
        contentPane.add(b2, BorderLayout.SOUTH);
        setContentPane(contentPane);

        //Create but don't show window.
        window = new FocusWindow(this);
    
public voidstop()

        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                window.setVisible(false);
            }
        });