Re: Layout Doesn't Work (was: jLabel setVisible(true) Doesn't Work)
To: Jeff Higgins
From: clusardi2k@aol.com
Nice project thanks, but I have two questions:
(Q1) How can you either modify this code or create a different project to use
controls that were dragged to the JFrame from the swing Palette. The code is
not to create the buttons, JFrame, JPanel, or JLabel.
I.E.:In Design View suppose you have a JFrame, jPanel1, jButton1, jButton2, and
jLabel1 already on the Frame. They were dragged to the form. Your current
project did not create them. The buttons and label are in the jPanel. How would
you make jLabel1 become invisible and invisible using two buttons.
(Q2) I noticed that int the below project the buttons move when one of the
buttons is pressed. How can you stop that from happening.
On Tuesday, August 7, 2012 10:27:46 PM UTC-4, Jeff Higgins wrote: import
java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
@SuppressWarnings("serial")
public class Scratch extends JPanel implements ActionListener {
private JButton vButton, iButton;
private JLabel label;
public Scratch() {
vButton = new JButton("Visible");
vButton.setMnemonic(KeyEvent.VK_D);
vButton.setToolTipText("Sets Label visible (true)");
vButton.setActionCommand("visible");
vButton.addActionListener(this);
vButton.setEnabled(false);
iButton = new JButton("Invisible");
iButton.setMnemonic(KeyEvent.VK_E);
iButton.setToolTipText("Sets Label visible (false)");
iButton.setActionCommand("invisible");
iButton.addActionListener(this);
label = new JLabel("Scratch");
add(vButton);
add(label);
add(iButton);
}
public void actionPerformed(ActionEvent e) {
if ("invisible".equals(e.getActionCommand())) {
label.setVisible(false);
vButton.setEnabled(true);
iButton.setEnabled(false);
} else {
label.setVisible(true);
vButton.setEnabled(false);
iButton.setEnabled(true);
}
}
private static void createAndShowGUI() {
JFrame frame = new JFrame("Scratch");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Scratch scratch = new Scratch();
frame.setContentPane(scratch);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24