swing:panels
                Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| swing:panels [2015/05/03 20:49] – created gthanos | swing:panels [Unknown date] (current) – external edit (Unknown date) 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Panels ====== | ====== Panels ====== | ||
| - | Σε πραγματικές εφαρμογές θέλουμε να φτιάξουμε σύνθετα παράθυρα που έχουν πολλά διαγορετικά κουμπιά σε διαφορετικές περιοχές. Κάτι τέτοιο δεν μπορούμε να το κάνουμε μόνο με τα layouts που είδαμε προηγούμενα. | + | Σε πραγματικές εφαρμογές θέλουμε να φτιάξουμε σύνθετα παράθυρα που έχουν πολλά διαφορετικά κουμπιά σε διαφορετικές περιοχές. Κάτι τέτοιο δεν μπορούμε να το κάνουμε μόνο με τα layouts που είδαμε προηγούμενα. | 
| + | |||
| + | Ο τρόπος για να φτιάξετε πολύπλοκα | ||
| + | |||
| + | Ο παρακάτω κώδικας δίνει ένα παράδειγμα, | ||
| + | |||
| + | <code java BorderLayoutPanelDemo.java> | ||
| + | import javax.swing.*; | ||
| + | import java.awt.event.ActionListener; | ||
| + | import java.awt.event.ActionEvent; | ||
| + | import java.awt.*; | ||
| + | |||
| + | public class BorderLayoutPanelDemo extends JFrame { | ||
| + | public BorderLayoutPanelDemo () { | ||
| + | super(); | ||
| + | setSize(400, | ||
| + | setTitle(" | ||
| + | setLayout(new BorderLayout()); | ||
| + | setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); | ||
| + | |||
| + | ButtonListener listener = new ButtonListener(); | ||
| + | |||
| + | okCancelPanel(this); | ||
| + | |||
| + | JButton centerButton = new JButton(" | ||
| + | centerButton.addActionListener( listener ); | ||
| + | add(centerButton, | ||
| + | } | ||
| + | |||
| + | private void okCancelPanel(Container container) { | ||
| + | JPanel southPanel = new JPanel(); | ||
| + | southPanel.setLayout(new FlowLayout()); | ||
| + | container.add(southPanel, | ||
| + | |||
| + | JButton cancelButton = new JButton(" | ||
| + | southPanel.add(cancelButton); | ||
| + | |||
| + | JButton okButton = new JButton(" | ||
| + | southPanel.add(okButton); | ||
| + | } | ||
| + | |||
| + | public class ButtonListener implements ActionListener { | ||
| + | public void actionPerformed(ActionEvent e) { | ||
| + | System.out.println(e); | ||
| + | System.exit(1); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | BorderLayoutPanelDemo w = new BorderLayoutPanelDemo(); | ||
| + | w.setVisible(true); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | | Προηγούμενο: | ||
| + | |||
swing/panels.1430686155.txt.gz · Last modified: 2015/05/03 19:49 (external edit)
                
                