====== Το πρώτο μου πρόγραμμα ====== Παρακάτω φτιάχνουμε ένα πρώτο απλό παραθυρικό πρόγραμμα το οποίο έχει μόνο ένα κουμπί που τερματίζει την εφαρμογή. Κατεβάστε και τρέξτε τα επόμενα δύο αρχεία. import javax.swing.JFrame; import javax.swing.JButton; import java.awt.event.*; public class FirstSwingDemo { public static final int WIDTH = 300; public static final int HEIGHT = 200; public static void showGUI() { JFrame firstWindow = new JFrame(); firstWindow.setSize(WIDTH, HEIGHT); firstWindow.setTitle("First Window Program!"); firstWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); JButton endButton = new JButton("Click to end program."); ActionListener buttonEar = new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }; endButton.addActionListener(buttonEar); firstWindow.add(endButton); firstWindow.pack(); firstWindow.setVisible(true); } public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { showGUI(); } }); } } Ας εξετάσουμε όμως τι κάνει το πρόγραμμα μας. Αρχικά δημιουργούμε ένα αντικείμενο του τύπου //JFrame// μέσα από την κλήση. JFrame firstWindow = new JFrame(); Το αντικείμενο αυτό είναι ένα απλό παράθυρο με τρία κουμπιά (minimize, resize, close). Στη συνέχεια ορίζουμε το μέγεθος του παραθύρου (σε pixels) και τον τίτλο του. firstWindow.setSize(WIDTH, HEIGHT); firstWindow.setTitle("First Window Program!"); Από την εμπειρία σας γνωρίζετε ότι όταν πατήσετε το κουμπί για το κλείσιμο του παραθύρου τότε το παράθυρο κλείνει και η εφαρμογή τερματίζεται. Η παρακάτω γραμμή διαχειρίζεται διαφορετικά ένα click event στο κουμπί κλεισίματος του παραθύρου, όπου όταν πατήσετε το κουμπί κλεισίματος αντί το παράθυρο να κλείσει δεν κάνει τίποτα. firstWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); Στην συνέχεια ορίζουμε ένα αντικείμενο τύπου JButton (κουμπί) με τίτλο "Click to end program." και δημιουργούμε και έναν Listener τον οποίο συνδέουμε με το συγκεκριμένο κουμπί. JButton endButton = new JButton("Click to end program."); ActionListener buttonEar = new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }; endButton.addActionListener(buttonEar); Προσθέτουμε το κουμπί στο παράθυρο και ορίζουμε ότι το παράθυρο που φτιάξαμε θέλουμε να είναι ορατό. firstWindow.add(endButton); firstWindow.pack(); firstWindow.setVisible(true); Το πρόγραμμα εκκινεί μέσω της στατικής μεθόδου **main** όπως παρακάτω. Ο παρακάτω κώδικας θα εξηγηθεί σε επόμενη ενότητα. public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { showGUI(); } }); } | Προηγούμενο: [[:swing:intro| Δημιουργία γραφικού περιβάλλοντος με swing ]] | [[:toc | Περιεχόμενα ]] | Επόμενο: [[:swing:events | Events & Event Listeners ]] |