Σύνθεταγραφικάσ ε Java

Σχετικά έγγραφα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #17

ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1)

Week 10: Graphical User Interfaces

ημιουργία Γραφικού Περιβάλλοντος

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #18

Week 12: GUIs with Swing

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων

Εργαστήριο Java. Αντικείµενο: Δίκτυα. Χειρισµός URLs. Άσκηση 1. Lab11. Πακέτο java.net

Εργαστήριο 8 - Άσκηση - Ανάλυση

Προγραμματισμός Διαδικτύου

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

8.1 Top-Level Swing Containers και Swing Components

Εφαρμογή Αναζήτησης στον Ελληνικό Γεωγραφικό Χώρο

Μέρος ΙΙ Εφαρμογές γραφικών με το πακέτο swing - 5. Περιεχόμενα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΕΙΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ιανουάριος 2008 Οι απαντήσεις να είναι καθαρογραμμένες με ευδιάκριτους όλους του χαρακτήρες.

Διδάσκων: Παναγιώτης Ανδρέου

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

Εργαστήριο 1-1 η Άσκηση - Ανάλυση

VK -14/10/2016 Σελίς 1

Οντοκεντρικός Προγραμματισμός

Εργαστήριο 7 - Άσκηση - Ανάλυση

Περιεχόµενα. Πρόλογος...15

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων

Εργαστήριο 6 - Άσκηση - Ανάλυση

9.1 JFC Swing. 9.1 JFC Swing Java (GUI) Java. Java Foundation Classes (JFC) Swing GUI. JFC Card Pile GameFrame GUI

8. Το μοντέλο συμβάντων του AWT

7. Ανάπτυξη GUI σε Java

24. ΓΡΑΦΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ

Γραφικές ιεπαφές Χρήστη και Γραφικά

Βιοϊατρική τεχνολογία

Εκφωνήσεις ασκήσεων εργαστηρίου 2 (java threads)

Αντικειμενοστρεφής Προγραμματισμός

Ειδικά Θέματα Προγραμματισμού

Περιεχόμενα. Πρόλογος... 17

Περιεχόμενα. Πρόλογος 15

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ

Αντικειµενοστραφής Προγραµµατισµός

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιασύνδεση µε χρήστη: Swing ΙΙ. Window Listeners

Πλήρες Εγχειρίδιο της Java 6, Cadenhead,

Certified Java Programmer (CJP)

Οντοκεντρικός Προγραμματισμός

VK -14/10/2016 Σελίς 1

10.1 Γενικά για τα streams

Εργαστήριο 3 - Άσκηση - Ανάλυση

Ειδικά Θέματα Προγραμματισμού

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING Event-driven programming

9. Η βιβλιοθήκη Components του AWT

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Εργαστήριο 4 - Άσκηση - Ανάλυση

Περιεχόμενα. Πρόλογος 15

New Project Windows Forms Applications

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Ask1, Ask2, Ask3. private void jbutton1actionperformed(java.awt.event.actionevent evt) { jlabel1.settext( "You pressed the 1st button" ); }

Προγραμματισμός ΙΙ (Java) 8-9. Γραφικές Διεπαφές

ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ. Η Γλώσσα Προγραµµατισµού Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING Event-driven programming

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING Event-driven programming

ΤΕΙ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ & ΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΠΡΟΗΓΜΕΝΑ USER-INTERFACES ΣΕ JAVA ΜΕ ΤΗΝ ΒΙΒΛΙΟΘΗΚΗ SWING

Αντικειμενοστρεφής Προγραμματισμός

Αντικειµενοστρεφής Προγραµµατισµός

JAVA TUTORIAL ΠΕΡΙΕΧΟΜΕΝΑ. ΚΕΦΑΛΑΙΟ 1. Τί κάνει τη Java να ξεχωρίζει; Εγκαθιστώντας τη Java

12.1 Εισαγωγή στο Swing

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ

Αντικειμενοστρεφής Προγραμματισμός

Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7

Κλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα

Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα

2 using namespace s t d ; 4 { 12 int t= x ; 6 x=y ; 7 y=t ; 8 } 9 11 { 13 x= y ; 14 y=t ; 15 } {

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

ΟΔΗΓΙΕΣ ΔΗΜΙΟΥΡΓΙΑΣ ΕΦΑΡΜΟΓΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΑΜΕΣΟΥ ΑΡΧΕΙΟΥ ΣΕ ΠΕΡΙΒΑΛΛΟΝ VISUAL STUDIO NET

Εργαστήριο 2 - Άσκηση - Ανάλυση

Γραφικά Περιβάλλοντα

Το επόμενο σχήμα εμφανίζει την ιεραρχία των GUI-components κλάσεων μαζί με κάποιες επιπλέον συμπληρωματικές κλάσεις που διαχειρίζονται ένα GUI.

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Υλοποίηση Δυαδικού Σωρού σε γλώσσα Java. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing


Εργαστήριο 9 - Άσκηση - Ανάλυση

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014

Προγραμματισμός Διαδικτύου

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. Applets. Εισαγωγικά

Διασυνδέσεις / Διεπαφές. Παναγιώτης Σφέτσος, PhD

Προγραμματισμός Διαδικτύου

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

ΚΑΤΑΝΕΜΗΜΕΝΟ ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΣΥΣΚΕΥΩΝ ΑΣΗΜΑΚΟΠΟΥΛΟΣ ΣΩΤΗΡΗΣ ΑΜ : 3021

Η λέξη κλειδί this. Γαβαλάς Δαμιανός

Αντικειμενοστρεφής Προγραμματισμός Τμήμα Εφαρμοσμένης Πληροφορικής Αναγκαιότητα Κλάσεων

Οντοκεντρικός Προγραμματισμός

Γεγονότα και Γεγονοστρεφής Προγραµµατισµός

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07

ΜΑΘΗΜΑ Άνοιγμα Της Εφαρμογής Επεξεργασίας Κειμένου. 2. Κύρια Οθόνη Της Εφαρμογής Κειμένου ΣΤΟΧΟΙ:

Μάθημα 2 [10/11/2015]

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Transcript:

Σύνθεταγραφικάσ ε Java ΙωάννηςΓ.Τσ ούλος May 15, 2013 1 Δημιουργία απλών παραθύρων Τοεπόμενοπαράδειγμαδημιουργείέναπαράθυρομεδύοσ τατικάκείμενασ εαυτό. Στοπρώτοσ τατικόκείμενοτοκείμενοείναιαπλόκαισ τοδεύτερογίνεταιχρήσ η HTMLγιατηνμορφοποίησ η. 5 c l a s s Close_Window extends WindowAdapter 7 public void windowclosing ( WindowEvent e ) 13 class MyFrame extends JFrame 1 { 15 JLabel label1, label2 ; 16 public MyFrame( String t i t l e ) 17 { 18 super( t i t l e ) ; 19 Container cp=getcontentpane ( ) ; 20 cp. setlayout (new FlowLayout ( ) ) ; 21 label1=new JLabel ("This i s simple text", JLabel.CENTER) ; 22 label2=new JLabel ("<html><head><title ></t i t l e ></head>"+ 23 "<body><b>bold text </b> <i> i t a l i c s text </i>"+ 2 "</body></html>", JLabel.RIGHT) ; 25 cp. setbackground( Color.WHITE) ; 26 cp. add( label1 ) ; 27 cp. add( label2 ) ; 28 addwindowlistener(new Close_Window ( ) ) ; 29 setsize (500,500); 1

30 s e tvisible (true ) ; 31 } 32 } 33 3 public class swing1 35 { 36 public static void main( String arg [ ] ) 37 { 38 MyFrame f=new MyFrame(" test1 " ) ; 39 } 0 } 2 Δημιουργία πλήκτρων Γιατηνδημιουργίαπλήκτρωνθαχρειασ τούμετηνκλάσ η JButtonηοποίαείναι περισ σ ότεροευέλικτηαπότηνκατηγορία Buttonπουχρησ ιμοποιείταισ τηνβιβλιοθήκη awt,καθώςμπορούμενατηνχρησ ιμοποιήσ ουμεγιαναφτιάξουμεπλήκτρα πουέχουνεικόνεςήακόμακαικείμενομαζίμεεικόνες. 5 c l a s s Close_Window extends WindowAdapter 7 public void windowclosing ( WindowEvent e ) 13 class MyFrame extends JFrame 1 { 15 JButton button1, button2, butto n3 ; 16 public MyFrame( String t i t l e ) 17 { 18 super( t i t l e ) ; 19 Container cp=getcontentpane ( ) ; 20 cp. setlayout (new GridLayout (1, 3 )); 21 cp. setbackground( Color.WHITE) ; 22 23 button1=new JButton ("",new ImageIcon (" arrow_left. png" ) ) ; 2 button2=new JButton ("Home" ) ; 25 button3=new JButton ("",new ImageIcon ("arrow_right. png" ) ) ; 26 cp. add( button1 ) ; 2

27 cp. add( button2 ) ; 28 cp. add( button3 ) ; 29 addwindowlistener(new Close_Window ( ) ) ; 30 setsize (300,100); 31 s e tvisible (true ) ; 32 } 33 } 3 35 public class swing2 3 37 public static void main( String arg [ ] ) 3 39 MyFrame f=new MyFrame(" test2 " ) ; 0 } 1 } 3 Πλαίσ ιακειμένου Γιατηνεισ αγωγήκειμένουαπότονχρήσ τηχρησ ιμοποιούμετιςκατηγορίες JTextField, JTextArea. 2 import javax.swing. ; 5 class Close_Window extends WindowAdapter 7 public void windowclosing (WindowEvent e ) 13 class MyFrame extends JFrame 1 { 15 JTextField name, lastname ; 16 JTextArea d e tails ; 17 public MyFrame(String t i t l e ) 1 19 super ( t i t l e ) ; 20 Container cp=getcontentpane ( ) ; 21 cp. setlayout (new GridLayout (3, 1 )); 22 cp. setbackground( Color.WHITE) ; 23 name=new JTextField ( ) ; 2 lastname=new JTextField ( ) ; 3

25 d e tails=new JTextArea (10,10); 26 cp. add(name ) ; 27 cp. add( lastname ) ; 28 cp. add( d e tails ) ; 29 addwindowlistener( new Close_Window ( ) ) ; 30 setsize (100,300); 31 s e tvisible (true ) ; 32 } 33 } 3 35 public class swing3 3 37 public static void main(string arg [ ] ) 3 39 MyFrame f=new MyFrame(" test3 " ) ; 0 } 1 } Διορθώσ τετοπαραπάνωπρόγραμμαώσ τεναεμφανίζειετικέττεςμεταπλαίσ ια εισ αγωγήςκειμένουαρισ τεράαπόαυτά,δηλαδήτοονομαναεμφανίζεταιπριν απότο name. Χειρισ μόςγεγονότωνσ το Swing Υπάρχουνδιάφοροιτρόποιγιαχειρισ μόγεγονότωνσ την Javaγιατο swingκαι οπιοβολικόςπρογραμματισ τικάθαλέγαμεπωςείναιοχειρισ μόςγεγονότωνμε ανώνυμες κατηγορίες. 5 c l a s s Close_Window extends WindowAdapter 7 public void windowclosing ( WindowEvent e ) 13 class MyFrame extends JFrame 1 { 15 JButton testbutton ; 16 public MyFrame( String t i t l e ) 17 { 18 super( t i t l e ) ;

19 Container cp=getcontentpane ( ) ; 20 cp. setlayout (new GridLayout (3, 1 )); 21 cp. setbackground( Color.WHITE) ; 22 testbutton=new JButton (" test " ) ; 23 cp. add( testbutton ) ; 2 testbutton. addactionlistener (new ActionListener () 25 { 26 public void actionperformed ( ActionEvent e ) 27 { 28 JOptionPane. showmessagedialog (null, "button pressed" ) ; 29 } 30 }); 31 addwindowlistener(new Close_Window ( ) ) ; 32 setsize (100,100); 33 s e tvisible (true ) ; 3 } 35 } 36 37 public class swing 3 39 public static void main( String arg [ ] ) 0 { 1 MyFrame f=new MyFrame(" test " ) ; 2 } 3 } 5 Λίσ τεςεπιλογής 5.1 Hκατηγορία JComboBox Ηκατηγορία JComboBoxμπορείναχρησ ιμοποιηθείγιατηνεμφάνισ ηενόςπτυσ σ όμενου μενού που ανοίγει προς τα κάτω. 2 import javax.swing. ; 5 class Close_Window extends WindowAdapter 7 public void windowclosing (WindowEvent e ) 5

13 class MyFrame extends JFrame 1 { 15 String names[]={ "Linux", " S o l a r i s", "Openbsd", "Freebsd", "Windows" }; 16 JComboBox combo ; 17 String selectedna me="" ; 18 public MyFrame(String t i t l e ) 19 { 20 super ( t i t l e ) ; 21 Container cp=getcontentpane ( ) ; 22 cp. setlayout (new GridLayout (3, 1 )); 23 cp. setbackground( Color.WHITE) ; 2 combo=new JComboBox( names ) ; 25 combo. setmaximumrowcount (2); 26 cp. add(combo ) ; 27 combo. additemlistener(new ItemListener () { 28 public void itemstatechanged( ItemEvent e ) 29 { 30 if (! selectedname. equals (names [ combo. getselectedindex ( )])) 31 { 32 selectedname=names [ combo. getselectedindex ( ) ] ; 33 System. out. println (" Selected = "+selectedname ) ; 3 } 35 } 36 }); 37 addwindowlistener( new Close_Window ( ) ) ; 38 setsize (100,200); 39 s e tvisible (true ) ; 0 } 1 } 2 3 public class swing5 { 5 public static void main(string arg [ ] ) 7 MyFrame f=new MyFrame(" test5 " ) ; 8 } 9 } 5.2 Η κατηγορία JList import javax. swing. event. ; 5 6

6 c l a s s Close_Window extends WindowAdapter 7 { 8 public void windowclosing ( WindowEvent e ) 9 { 10 System. exit ( 0); } 13 1 class MyFrame extends JFrame 15 { 16 String names[]={ "Linux", " S o l a r i s", "Openbsd", "Freebsd", "Windows" }; 17 JList l i s t ; 18 String selectedname="" ; 19 public MyFrame( String t i t l e ) 20 { 21 super( t i t l e ) ; 22 Container cp=getcontentpane ( ) ; 23 cp. setlayout (new GridLayout (3, 1 )); 2 cp. setbackground( Color.WHITE) ; 25 l i s t=new JList (names ) ; 26 l i s t. setvisiblerowcount (2); 27 l i s t. setselectionmode ( ListSelectionModel.SINGLE_SELECTION) ; 28 cp. add( l i s t ) ; 29 l i s t. addlistselectionlistener (new ListSelectionListener () 30 { 31 public void valuechanged( ListSelectionEvent e ) 32 { 33 if (! selectedname. equals (names [ l i s t. getselectedindex ( ) ] ) ) 3 { 35 selectedname=names [ l i s t. getselectedindex ( ) ] ; 36 System. out. println (" Selected = "+selectedname ) ; 37 } 38 } 39 }); 0 addwindowlistener(new Close_Window ( ) ) ; 1 setsize (100,200); 2 s e tvisible (true ) ; 3 } } 5 6 public class swing6 7 { 8 public static void main( String arg [ ] ) 9 { 50 MyFrame f=new MyFrame(" test6 " ) ; 51 } 7

52 } 5.3 Η κατηγορία JMenu Τοπακέτο AWTδιαθέτειέναναρκετάεύχρησ τοτρόπογιατηνδημιουργίαμενου. Η διαδικασ ία είναι σ χετικά απλή: δημιουργείταιμια μπάρα με τα menu, σ την σ υνέχειαταίδιατα menuκαισ τοτέλοςτασ τοιχείατων menus (menuitems) import javax. swing. event. ; 5 6 c l a s s Close_Window extends WindowAdapter 7 { 8 public void windowclosing ( WindowEvent e ) 9 { 10 System. exit ( 0); } 13 1 class MenuItemHandler implements ActionListener 15 { 16 public void actionperformed ( ActionEvent e ) 17 { 18 String cmd=e. getactioncommand ( ) ; 19 JOptionPane. showmessagedialog (null, "event = "+cmd ) ; 20 if (cmd. equals ("Exit" )) System. exit (0); 21 } 22 } 23 2 class MyFrame extends JFrame 25 { 26 JMenuBar bar ; 27 JMenu filemenu ; 28 JMenu editmenu ; 29 JMenuItem filenew, fileopen, filesave, f i l e E x i t ; 30 JMenuItem editundo, editredo, editcut, editpaste ; 31 MenuItemHandler handler ; 32 public MyFrame( String t i t l e ) 33 { 3 super( t i t l e ) ; 35 Container cp=getcontentpane ( ) ; 36 cp. setbackground( Color.WHITE) ; 37 handler=new MenuItemHandler ( ) ; 38 bar=new JMenuBar ( ) ; 39 filemenu=new JMenu(" File " ) ; 8

0 editmenu=new JMenu("Edit" ) ; 1 filenew =new JMenuItem ("New" ) ; 2 filenew. addactionlistener ( handler ) ; 3 filemenu. add( filenew ) ; fileopen=new JMenuItem ("Open" ) ; 5 fileopen. addactionlistener ( handler ) ; 6 filemenu. add( fileopen ) ; 7 filesave=new JMenuItem ("Save" ) ; 8 f i l e E x i t=new JMenuItem ("Exit" ) ; 9 f i l e E x i t. addactionlistener ( handler ) ; 50 filemenu. add( f i l e E x i t ) ; 51 52 editundo=new JMenuItem ("Undo" ) ; 53 editundo. addactionlistener ( handler ) ; 5 editmenu. add( editundo ) ; 55 56 editredo=new JMenuItem (" Redo" ) ; 57 editredo. addactionlistener ( handler ) ; 58 editmenu. add( editredo ) ; 59 60 editcut=new JMenuItem ("Cut" ) ; 61 editcut. addactionlistener ( handler ) ; 62 editmenu. add( editcut ) ; 63 6 editpaste=new JMenuItem ("Paste" ) ; 65 editpaste. addactionlistener ( handler ) ; 66 editmenu. add( editpaste ) ; 67 68 bar. add( filemenu ) ; 69 bar. add( editmenu ) ; 70 setjmenubar ( bar ) ; 71 addwindowlistener(new Close_Window ( ) ) ; 72 setsize (500,200); 73 s e tvisible (true ) ; 7 75 } 76 } 77 78 public class swing7 79 { 80 public static void main( String arg [ ] ) 81 { 82 MyFrame f=new MyFrame(" test7 " ) ; 83 } 8 } 9