问题
currently i have a class which extends JPanel and basically shows some information about an object passed into its constructor. There are various labels and Image icons on the screen and has a BorderLayout set.
This panel is triggered when the user left clicks on an ImageIcon from the main GUI and shows up on the screen.
i was wondering, how (if there is a way) i could implement the JOptionPane.OK_OPTION onto the whole Panel so that i dont have to close the panel using Event handling, as the screen is simply to show information and when the user has finished, they press okay and the panel should close off.
thanks Jordan
回答1:
You can simply pass the object of that JPanel
within the JOptionPane
. For example:
JPanel panel = new JPanel();
panel.add(new JButton("Click"));
panel.add(new JTextField(20));
panel.add(new JLabel("Label"));
JOptionPane.showMessageDialog(null,panel,"Information",JOptionPane.INFORMATION_MESSAGE);
Above code will put the JPanel
on JOptionPane
message dialog. When you click OK
the panel closes Off.
来源:https://stackoverflow.com/questions/16267562/making-a-jpanel-into-a-joptionpane-ok-option