This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
swing:intro [2015/05/01 03:10] gthanos [Το πρώτο μου πρόγραμμα] |
swing:intro [2015/05/01 03:24] gthanos [Χρήση μίας ανώνυμης κλάσης ActionListener] |
||
---|---|---|---|
Line 57: | Line 57: | ||
</code> | </code> | ||
- | Ας εξετάσουμε όμως τι κάνει το πρόγραμμα μας. | + | Ας εξετάσουμε όμως τι κάνει το πρόγραμμα μας. Αρχικά δημιουργούμε ένα αντικείμενο του τύπου //JFrame// μέσα από την κλήση. |
+ | <code java> | ||
+ | JFrame firstWindow = new JFrame(); | ||
+ | </code> | ||
+ | Το αντικείμενο αυτό είναι ένα απλό παράθυρο με τρία κουμπιά (minimize, resize, close). Στη συνέχεια ορίζουμε το μέγεθος του παραθύρου (σε pixels) και τον τίτλο του. | ||
+ | <code java> | ||
+ | firstWindow.setSize(WIDTH, HEIGHT); | ||
+ | firstWindow.setTitle("First Window Program!"); | ||
+ | </code> | ||
+ | Από την εμπειρία σας γνωρίζετε ότι όταν πατήσετε το κουμπί για το κλείσιμο του παραθύρου τότε το παράθυρο κλείνει και η εφαρμογή τερματίζεται. Η παρακάτω γραμμή διαχειρίζεται διαφορετικά ένα click event στο κουμπί κλεισίματος του παραθύρου, όπου όταν πατήσετε το κουμπί κλεισίματος αντί το παράθυρο να κλείσει δεν κάνει τίποτα. | ||
+ | <code java> | ||
+ | firstWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); | ||
+ | </code> | ||
+ | |||
+ | Στην συνέχεια ορίζουμε ένα αντικείμενο τύπου JButton (κουμπί) με τίτλο "Click to end program." και δημιουργούμε και έναν Listener τον οποίο συνδέουμε με το συγκεκριμένο κουμπί. | ||
+ | <code java> | ||
+ | JButton endButton = new JButton("Click to end program."); | ||
+ | EndingListener buttonEar = new EndingListener(); | ||
+ | endButton.addActionListener(buttonEar); | ||
+ | </code> | ||
+ | Προσθέτουμε το κουμπί στο παράθυρο και ορίζουμε ότι το παράθυρο που φτιάξαμε θέλουμε να είναι ορατό. | ||
+ | <code java> | ||
+ | firstWindow.add(endButton); | ||
+ | firstWindow.setVisible(true); | ||
+ | </code> | ||
==== Χρήση μίας ανώνυμης κλάσης ActionListener ==== | ==== Χρήση μίας ανώνυμης κλάσης ActionListener ==== | ||
Line 78: | Line 102: | ||
firstWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); | firstWindow.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); | ||
JButton endButton = new JButton("Click to end program."); | JButton endButton = new JButton("Click to end program."); | ||
+ | | ||
ActionListener buttonEar = new ActionListener() { | ActionListener buttonEar = new ActionListener() { | ||
public void actionPerformed(ActionEvent e) { | public void actionPerformed(ActionEvent e) { | ||
Line 83: | Line 108: | ||
} | } | ||
}; | }; | ||
+ | | ||
endButton.addActionListener(buttonEar); | endButton.addActionListener(buttonEar); | ||
firstWindow.add(endButton); | firstWindow.add(endButton); |