ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
|
|
- Ίσις Δοξαράς
- 7 χρόνια πριν
- Προβολές:
Transcript
1 ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
2 Μία πρώτη μικρή γεύση των δυνατοτήτων της Swing. Παράδειγμα Δυνατοτήτων Swing Δρ. Κεραμόπουλος Ευκλείδης 2
3 To JAVA SWING είναι ένα API της JAVA το οποίο χρησιμοποιείται για την κατασκευή Γραφικών Προγραμμάτων. Είναι κομμάτι του JFC (Java Foundation Class) Μπορεί να θεωρηθεί ως εξέλιξη του AWT (Abstract Window Toolkit) της Java. Βασίζεται στο μοντέλο MVC (Model View Control) Δρ. Κεραμόπουλος Ευκλείδης 3
4 To JFC αποτελείται από 5 μέρη. 1. AWT, 2. Swing, 3. Accessibility, 4. Java 2D, και 5. Drag and Drop. Η Java 2D είναι κομμάτι της AWT, Η Swing έχει χτιστεί πάνω στην AWT, και ουσιαστικά είναι εξέλιξη της. Η Accessibility είναι κομμάτι της Swing. Δρ. Κεραμόπουλος Ευκλείδης 4
5 Όταν δημιουργήθηκε η Java το API AWT (Abstract Window Toolkit) χρησιμοποιούταν για την δημιουργία GUI. To AWT υποστηρίζει τάξεις οι οποίες υλοποιούν τα βασικά στοιχεία μιας διεπιφάνειας. Ο λόγος της ριζικής βελτίωσης του AWT με τη SWING ήταν: Η μετάφραση των οπτικών (visual) συστατικών του AWT ήταν εξαρτημένη από τη πλατφόρμα (λειτουργικό) όπου δημιουργούνταν. Έτσι τα συστατικά του μεταφράζονταν σε native code χαρακτηρίζονταν ως «βαριά» συστατικά. Αυτό οδηγούσε σε προβλήματα όπως: Δεν μπορούσε να υλοποιηθεί το μοτο της JAVA (γράψε μία φορά, τρέξτο παντού) Η αίσθηση των συστατικών ενός GUI όταν εκτελούνταν σε άλλο λειτουργικό δεν μπορούσαν να αλλάξουν εύκολα. Τα «βαριά» συστατικά του AWT δεν ήταν ευέλικτα και συνήθως είχαν περιορισμούς στην εμφάνιση Δρ. Κεραμόπουλος Ευκλείδης 5
6 H Swing δημιουργήθηκε το 1997 ως ανάγκη για να λύσει τα προβλήματα του AWT. Δύο είναι τα κύρια χαρακτηριστικά της Swing Ελαφρά συστατικά Pluggable εμφάνιση και αίσθηση Δρ. Κεραμόπουλος Ευκλείδης 6
7 Η μεγάλη πλειοψηφία των συστατικών της Swing είναι «ελαφριά» Είναι γραμμένα αποκλειστικά σε Java. Αυτό είχε αρκετά πλεονεκτήματα Τα συστατικά ήταν πιο ευέλικτα και πιο ευμετάβλητα (μπορούμε να αλλάξουμε εύκολα πολλές ιδιότητες τους) Η εμφάνιση και αίσθηση των συστατικών ορίζεται μόνο από την Swing και όχι από την πλατφόρμα. Δρ. Κεραμόπουλος Ευκλείδης 7
8 Επειδή τα συστατικά της Swing είναι ελαφριά είναι δυνατόν να χωριστεί η εμφάνιση και αίσθηση των συστατικών από τη λειτουργία τους Μπορεί να αλλάξει η εμφάνιση και αίσθηση ενός συστατικού χωρίς να επηρεάσει τη λειτουργία του Αυτό έχει σαν αποτέλεσμα η εμφάνιση μίας διεπιφάνειας να ρυθμίζεται ανάλογα με την εμφάνιση και αίσθηση που έχουμε επιλέξει. Τέσσερις μορφές είναι διαθέσιμες στην Swing Metal (Java) Windows (Microsoft) Motif (XWindows) Ορισμένο από το Χρήστη Υπάρχει η δυνατότητα να αλλάζει η εμφάνιση και αίσθηση μίας διεπιφάνειας δυναμικά την ώρα της εκτέλεσης Δρ. Κεραμόπουλος Ευκλείδης 8
9 Τα συστατικά είναι όλα τα στοιχεία που μπορεί να περιέχει μία διεπιφάνεια. Για παράδειγμα: κουμπιά, μενού, λίστες Οι υποδοχείς (containers) είναι συστατικά (components). Κάθε Swing εφαρμογή θα πρέπει να περιέχει έναν εξωτερικό υποδοχέα, ο οποίος θα περιλαμβάνει όλα τα συστατικά της διεπιφάνειας. Ένας υποδοχέας μπορεί να περιλαμβάνει και άλλους υποδοχείς. Μία διεπιφάνεια χτισμένη σε Swing μπορεί να παρασταθεί και ως ένα δέντρο όπου η ρίζα του είναι ο εξωτερικός υποδοχέας. Δρ. Κεραμόπουλος Ευκλείδης 9
10 Όλα τα Swing συστατικά είναι παιδιά της τάξης JComponent εκτός από τέσσερα συστατικά-υποδοχείς Στην τάξη JComponent υλοποιούνται τα χαρακτηριστικά που είναι κοινά για όλα τα συστατικά μίας διεπιφάνειας, π.χ. η εμφάνιση και η αίσθηση. Όλα τα συστατικά περιέχονται στο πακέτο javax.swing. Δρ. Κεραμόπουλος Ευκλείδης 10
11 Υπάρχουν δύο ειδών υποδοχείς: Οι Εξωτερικοί, Οι Εσωτερικοί Δρ. Κεραμόπουλος Ευκλείδης 11
12 Είναι βαριά συστατικά και δεν είναι παιδιά της JComponent. Είναι τέσσερις JFrame JApplet JWindow JDialog Δρ. Κεραμόπουλος Ευκλείδης 12
13 Είναι ελαφριά συστατικά και είναι παιδιά της JComponent. Είναι δύο JPanel JRootPane Χρησιμοποιούνται για να οργανώνουν σετ από συστατικά σε ομάδες. Προφανώς οι εσωτερικοί υποδοχείς εισάγονται είτε σε κάποιο άλλο εσωτερικό ή εξωτερικό υποδοχέα. Δρ. Κεραμόπουλος Ευκλείδης 13
14 Ο υποδοχέας του ανώτερου επιπέδου αποτελείται από αντικείμενο της τάξης JRootPane και ο ρόλος του είναι να περιέχει όλα τα συστατικά της εφαρμογής και ένα προαιρετικό μενού. Ο υποδοχέας ανώτερου επιπέδου αποτελείται από τρεις υποδοχείς: Glass pane Είναι διάφανος και ο ρόλος του είναι να διαχειρίζεται τα γεγονότα που δημιουργούνται από τις ενέργειες που προκαλούνται με το ποντίκι στο υποδοχέα ανώτερου επιπέδου και τα συστατικά του. Layered pane Διαχειρίζεται τις αλληλοεπικαλύψεις των συστατικών, με άλλα λόγια επιτρέπει τα συστατικά να τοποθετούνται σε επίπεδα. Content pane Οι δύο προηγούμενοι υποδοχείς χρησιμοποιούνται πίσω από τη «σκηνή». Ο υποδοχέας όπου ουσιαστικά προστίθενται όλα τα συστατικά είναι ο συγκεκριμένος. Μπορούμε να αναφερόμαστε στους τρεις υποδοχείς με τα ονόματα glasspane, layeredpane, contentpane Δρ. Κεραμόπουλος Ευκλείδης 14
15 1. import javax.swing.*; class SwingDemo { SwingDemo() { JFrame jfrm = new JFrame("A Simple Swing Program"); jfrm.setsize(275, 100); jfrm.setdefaultcloseoperation(jframe.exit_on_close); JLabel jlab = new JLabel(" Swing powers the modern Java GUI."); jfrm.getcontentpane().add(jlab); jfrm.setvisible(true); 24. } Περιέχει τις Swing τάξεις Δημιουργεί έναν υποδοχέα ανώτερου επιπέδου Ορίζω το μέγεθος του υποδοχέα Κλείνει η εφαρμογή όταν κάνω click στο close box Δημιουργεί μία ετικέτα Προσθέτει την ετικέτα στο contentpane Κάνει ορατά όλα τα αντικείμενα Δρ. Κεραμόπουλος Ευκλείδης 15
16 25. public static void main(string args[]) { SwingUtilities.invokeLater(new Runnable() { 29. public void run() { 30. new SwingDemo(); 31. } 32. }); Δημιουργεί την Διεπιφάνεια } 35. } Δρ. Κεραμόπουλος Ευκλείδης 16
17 JFrame είναι εξωτερικός υποδοχέας. Υλοποιεί ένα παράθυρο, με μπάρα τίτλου και κουμπιά για ελαχιστοποίηση, μεγιστοποίηση και κλείσιμο του παραθύρου. JLabel είναι ένα συστατικό της Swing το οποίο χρησιμοποιείται για να εμφανίζει πληροφορίες. Είναι το πιο απλό συστατικό αφού είναι παθητικό, δηλαδή δεν μπορεί να δεχθεί ενέργειες του χρήστη. Δρ. Κεραμόπουλος Ευκλείδης 17
18 Μέθοδος setsize(): ορίζει το μέγεθος του παράθυρου void setsize(int width, int height) Μέθοδος setdefaultcloseoperation(): ορίζει τι θα συμβαίνει στην εφαρμογή όταν ο χρήστης επιλέγει να κλείσει ένα παράθυρο. void setdefaultcloseoperation(int what) Οι τιμές που μπορεί να πάρει το what είναι: 1. EXIT_ON_CLOSE : στην έξοδο σταματάει και η εφαρμογή 2. DISPOSE_ON_CLOSE: στην έξοδο σταματάει και η εφαρμογή 3. HIDE_ON_CLOSE: στην έξοδο η εφαρμογή δουλεύει στο φόντο 4. DO_NOTHING_ON_CLOSE: στην έξοδο να μην γίνει τίποτα Δρ. Κεραμόπουλος Ευκλείδης 18
19 Μέθοδος add(): προσθέτει ένα συστατικό στον υποδοχέα. Component add(component comp) Μέθοδος getcontentpane(): επιστρέφει μία αναφορά με το content pane του υποδοχέα. Container getcontentpane() Σημείωση: Μετά το JDK5 η μέθοδος getcontentpane παραλείπεται. Δηλαδή, οι παρακάτω εντολές είναι ισοδύναμες jfrm.add(jlab); Jfrm.getContentPane().add(jlab); Δρ. Κεραμόπουλος Ευκλείδης 19
20 Μέθοδος setvisible(): εμφανίζει έναν υποδοχέα. Η αρχική κατάσταση είναι να είναι αόρατος ο υποδοχέας. void setvisible(boolean flag) Οι τιμές της flag είναι true για ορατό και false για αόρατο. SwingUtilities.invokeLater(new Runnable() { public void run() { new SwingDemo(); } }); Τα προγράμματα Swing είναι event-driven (προγραμματισμός γεγονότων) γι αυτό και ενεργοποιούνται στο νήμα-γεγονότων και όχι στο νήμα-main. Με το αντικείμενο Runnable ενεργοποιούμε το νήμα-γεγονότων. Τις διεπιφάνειες τις ενεργοποιούμε πάνω στο νήμα-γεγονότων με τις μεθόδους static invokelater(runnable obj) static invokeandwait(runnable obj) Συνήθως προτιμούμε την πρώτη για desktop εφαρμογές ενώ τη δεύτερη για Applets Δρ. Κεραμόπουλος Ευκλείδης 20
21 ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
22 Δρ. Κεραμόπουλος Ευκλείδης 22
23 Δρ. Κεραμόπουλος Ευκλείδης 23
24 Βγάζουμε τα της επιλογής Δρ. Κεραμόπουλος Ευκλείδης 24
25 Δρ. Κεραμόπουλος Ευκλείδης 25
26 Δρ. Κεραμόπουλος Ευκλείδης 26
27 Δρ. Κεραμόπουλος Ευκλείδης 27
28 Δρ. Κεραμόπουλος Ευκλείδης 28
29 Δρ. Κεραμόπουλος Ευκλείδης 29
30 Δρ. Κεραμόπουλος Ευκλείδης 30
31 Δρ. Κεραμόπουλος Ευκλείδης 31
32 Δρ. Κεραμόπουλος Ευκλείδης 32
33 Δρ. Κεραμόπουλος Ευκλείδης 33
34 Δρ. Κεραμόπουλος Ευκλείδης 34
35 Δρ. Κεραμόπουλος Ευκλείδης 35
36 ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
37 Δρ. Κεραμόπουλος Ευκλείδης 37
38 Δρ. Κεραμόπουλος Ευκλείδης 38
39 Ορίζει τον τρόπο εξόδου Ορίζει τον τίτλο του παράθυρου Δρ. Κεραμόπουλος Ευκλείδης 39
40 Ορίζει τον μέγεθος του παράθυρου Δρ. Κεραμόπουλος Ευκλείδης 40
41 Επιλέγω το Label Δρ. Κεραμόπουλος Ευκλείδης 41
42 Δρ. Κεραμόπουλος Ευκλείδης 42
43 Δρ. Κεραμόπουλος Ευκλείδης 43
44 Το πρόγραμμα τρέχει και περιμένει το χρήστη Δρ. Κεραμόπουλος Ευκλείδης 44
45 1. package ADX_project1; 2. public class GUISwingDemo extends javax.swing.jframe { 3. /** Creates new form GUISwingDemo */ 4. public GUISwingDemo() { 5. initcomponents(); 6. } 7. /** This method is called from within the constructor to initialize the form. 8. * WARNING: Do NOT modify this code. The content of this method is always regenerated by the Form Editor. */ 10. // <editor-fold defaultstate="collapsed" desc="generated Code"> 11. private void initcomponents() { 12. jlabel1 = new javax.swing.jlabel(); 13. setdefaultcloseoperation(javax.swing.windowconstants.exit_on_close); 14. settitle("a Simple Swing Program"); 15. jlabel1.settext("a Swing powers the modern java GUI"); 16. javax.swing.grouplayout layout = new javax.swing.grouplayout(getcontentpane()); 17. getcontentpane().setlayout(layout); Δρ. Κεραμόπουλος Ευκλείδης 45
46 18. layout.sethorizontalgroup( 19. layout.createparallelgroup(javax.swing.grouplayout.alignment.leading) 20..addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createsequentialgroup() 21..addContainerGap(49, Short.MAX_VALUE) 22..addComponent(jLabel1) 23..addGap(47, 47, 47)) 24. ); 25. layout.setverticalgroup( 26. layout.createparallelgroup(javax.swing.grouplayout.alignment.leading) 27..addGroup(layout.createSequentialGroup() 28..addGap(38, 38, 38) 29..addComponent(jLabel1) 30..addContainerGap(48, Short.MAX_VALUE)) 31. ); 32. pack(); 33. }// </editor-fold> Δρ. Κεραμόπουλος Ευκλείδης 46
47 34. /**package A 35. args the command line arguments 36. */ 37. public static void main(string args[]) { 38. java.awt.eventqueue.invokelater(new Runnable() { 39. public void run() { 40. new GUISwingDemo().setVisible(true); 41. } 42. }); 43. } 44. // Variables declaration - do not modify 45. private javax.swing.jlabel jlabel1; 46. // End of variables declaration 47. } Δρ. Κεραμόπουλος Ευκλείδης 47
48 Πότε δημιουργείτε ένα γεγονός; Mouse click Keyboard click Όταν περνάει κάποιο χρονικό διάστημα Πώς λειτουργεί το μοντέλο αποστολής γεγονότων (Event Handling); 1. μόλις δημιουργείται ένα γεγονός (event) από ένα αντικείμενο που μπορεί να δημιουργήσει γεγονότα (event source), τότε 2. δημιουργείται ένα αντικείμενο γεγονότος το οποίο περιέχει πληροφορίες για το γεγονός και για την πηγή από την οποία προέρχεται. 3. Το γεγονός γίνεται αντιληπτό από τον ακροατή του γεγονότος (event listener) ο οποίος καλεί 4. τον χειριστή του γεγονότος μία μέθοδο που αντιστοιχεί σε κάποιο τύπο γεγονότος. Δρ. Κεραμόπουλος Ευκλείδης 48
49 Πώς γίνεται η σύνδεση μεταξύ της πηγής ενός γεγονότος και του ακροατή; Κάθε πηγή γεγονότων παρέχει μεθόδους για την καταχώρηση ακροατών χρησιμοποιούμε τη μέθοδο addtypelistener( TypeListener el) για την αφαίρεση ακροατών χρησιμοποιούμε τη μέθοδο removetypelistener(typelistener el) Παράδειγμα jbtn.addkeylistener() προσθέτει έναν ακροατή στο αντικείμενο jbtn για το πληκτρολόγιο jbtn.addmousemotionlistener() προσθέτει έναν ακροατή στο αντικείμενο jbtn για την κίνηση του ποντικιού jbtn.removekeylistener() αφαιρεί από το αντικείμενο jbtn τον ακροατή για το πληκτρολόγιο jbtn.removemousemotionlistener() αφαιρεί από το αντικείμενο jbtn τον ακροατή για την κίνηση του ποντικιού Δρ. Κεραμόπουλος Ευκλείδης 49
50 Ο ακροατής είναι αντικείμενο το οποίο ενημερώνεται μόλις συμβεί ένα γεγονός. Για να τον χρησιμοποιήσουμε υπάρχουν δύο βασικές απαιτήσεις: 1. Θα πρέπει να έχει γίνει η καταχώρηση για κάθε γεγονός που μπορεί να προκληθεί από κάποια πηγή. Π.χ. αν θέλουμε να προγραμματίσουμε το πάτημα ενός συγκεκριμένου κουμπιού τότε θα πρέπει να προσθέσουμε έναν ακροατή για αυτό το γεγονός. 2. Θα πρέπει να υλοποιηθεί η κατάλληλη μέθοδος η οποία θα δεχθεί το γεγονός και θα το υλοποιήσει. Έτοιμες μεθόδους για να δεχθούν και να επεξεργασθούν ένα γεγονός υπάρχουν στα παρακάτω interfaces: java.awt.event java.swing.event java.beans Βασικός κανόνας για τη χρήση ενός ακροατή είναι η ταχύτητα. Αν χρειάζεται θα πρέπει να υλοποιηθεί η επεξεργασία του ακροατή σε νέο νήμα. Δρ. Κεραμόπουλος Ευκλείδης 50
51 java.util.eventobject java.awt.awtevent ActionEvent AdjustmentEvent ComponentEvent ItemEvent TextEvent ContainerEvent FocusEvent InputEvent PointEvent WindowEvent KeyEvent MouseEvent Δρ. Κεραμόπουλος Ευκλείδης 51
52 Μία πηγή γεγονότων δεν δημιουργεί αποκλειστικά ένα γεγονός αλλά μία σειρά από γεγονότα. Για παράδειγμα το πάτημα ενός κουμπιού δημιουργεί τα παρακάτω γεγονότα ActionEvent ComponentEvent FocusEvent MouseEvent KeyEvent Δρ. Κεραμόπουλος Ευκλείδης 52
53 Κατηγορία γεγονότος ActionEvent AdjustmentEvent ItemEvent TextEvent MouseEvent KeyEvent WindowEvent FocusEvent ComponentEvent ContainerEvent User-defined Προέλευση Δημιουργείται από κάποια ενέργεια του χρήστη, όπως πάτημα σε ένα κουμπί, διπλοπάτημα σε κάποιο από τα περιεχόμενα μιας λίστας ή ενός μενού, ή enter σε ένα στοιχείο κειμένου. Δημιουργείται από τη μεταβολή ενός ρυθμιζόμενου συστατικού, όπως η ράβδος κύλισης (scrollbar). Δημιουργείται όταν ο χρήστης επιλέγει ένα στοιχείο μιας λίστας ή πατάει σε ένα πλαίσιο ελέγχου ή σε ένα μενού επιλογών. Δημιουργείται όταν αλλάζει το περιεχόμενο ενός στοιχείου κειμένου (TextFiled, TextArea). Δημιουργείται όταν ο χρήστης μετακινεί το ποντίκι ή πατάει με αυτό. Δημιουργείται όταν πιέζεται ή απελευθερώνεται ένα πλήκτρο του πληκτρολογίου. Δημιουργείται όταν συμβαίνει μετακίνηση, μεγιστοποίηση, ελαχιστοποίηση ή κλείσιμο του παραθύρου. Δημιουργείται όταν ένα συστατικό δέχεται ή χάνει την εστίαση (focus). Δημιουργείται όταν ένα συστατικό αποκρύπτεται, εμφανίζεται, μετακινείται, ή αλλάζει μέγεθος. Δημιουργείται όταν ένα συστατικό προστίθεται ή αφαιρείται σε/από ένα συστατικό-υποδοχεά. Οτιδήποτε άλλο Δρ. Κεραμόπουλος Ευκλείδης 53
54 Κατηγορία γεγονότος MouseWheelEvent AncestorEvent CaretEvent ChangeEvent HyperlinkEvent ListDataEvent ListSelectionEvent MenuEvent TableModelEvent TreeExpansionEvent TreeModelEvent TreeSelectionEvent Προέλευση Δημιουργείται από την κίνηση της ρόδας του ποντικιού. Δημιουργείται από την προσθήκη, αφαίρεση ή μετακίνηση ενός συστατικού. Δημιουργείται όταν μετακινείται ο δείκτης του ποντικιού όταν γράφουμε κείμενο. Δημιουργείται όταν ένα συστατικό αλλάζει κατάσταση. Δημιουργείται όταν ένα hyperlink επιλέγεται. Δημιουργείται όταν αλλάξουν τα περιεχόμενα μιας λίστας. Δημιουργείται όταν αλλάζει η επιλογή μας από μία λίστα. Δημιουργείται όταν μία επιλογή μενού διαλέγεται. Δημιουργείται όταν το μοντέλο ενός πίνακα αλλάζει. Δημιουργείται όταν ένα δέντρο «ανοίγει» ή «κλείνει». Δημιουργείται όταν αλλάζει το μοντέλο του δέντρου. Δημιουργείται όταν επιλέγεται ένα κλαδί του δένρου. Δρ. Κεραμόπουλος Ευκλείδης 54
55 getsource(): ανήκει στην κλάση java.util.eventobject επιστρέφει σε μορφή Object την πηγή ενός γεγονότος getid(): ανήκει στην κλάση java.awt.awtevent επιστρέφει σε μορφή ακεραίου το ID του γεγονότος Δρ. Κεραμόπουλος Ευκλείδης 55
56 Δημιουργία μίας εφαρμογής όπου θα παρουσιάζεται ποιο κουμπί πατήθηκε. Δρ. Κεραμόπουλος Ευκλείδης 56
57 To push button είναι στιγμιότυπο ενός JButton το οποίο κληρονομεί την abstract class AbstractButton όπου ορίζεται η κοινή συμπεριφορά όλων των κουμπιών στην Java Swing. Ένα push button μπορεί να περιέχει κείμενο, εικόνα ή και τα δύο. Για να δημιουργήσουμε ένα push button με κείμενο χρησιμοποιούμε τον παρακάτω δομητή: JΒutton(String msg), όπου msg το κείμενο που θα περιέχει το κουμπί. Επίσης, για να προσθέσουμε ή να αφαιρέσουμε ακροατές για push buttons μας παρέχονται οι παρακάτω μέθοδοι: void addactionlistener(actionlistener al); void removeactionlistener(actionlistener al); Το al ορίζει το αντικείμενο που θα δεχθεί μία ενημέρωση για το συγκεκριμένο γεγονός (πατήματος του συγκεκριμένου πλήκτρου) Μόλις ενημερωθεί το al για το γεγονός ενεργοποιεί τη μέθοδο: void actionperformed(actionevent ae); Δρ. Κεραμόπουλος Ευκλείδης 57
58 1. import java.awt.*; 2. import java.awt.event.*; 3. import javax.swing.*; class ButtonDemo implements ActionListener { 6. JLabel jlab; Περιέχει την FlowLayout τάξη Περιέχει την ActionListener και ActionEvent τάξη Η τάξη ButtonDemo μπορεί να χειριστεί γεγονότα επειδή Implements ActionListener ButtonDemo() { JFrame jfrm = new JFrame("A Button Example"); jfrm.setlayout(new FlowLayout()); Το frame έχει διάταξη FlowLayout, δηλαδή σε μία σειρά jfrm.setsize(220, 90); jfrm.setdefaultcloseoperation(jframe.exit_on_close); Δρ. Κεραμόπουλος Ευκλείδης 58
59 18. JButton jbtnfirst = new JButton("First"); 19. JButton jbtnsecond = new JButton("Second"); jbtnfirst.addactionlistener(this); 22. jbtnsecond.addactionlistener(this); jfrm.add(jbtnfirst); 25. jfrm.add(jbtnsecond); jlab = new JLabel("Press a button."); jfrm.add(jlab); jfrm.setvisible(true); 32. } Δημιουργείται ένα κουμπί που περιέχει το κείμενο «First» Καταχωρούμε στα κουμπιά το γεγονός ActionListener Προσθέτουμε τα κουμπιά στο Frame Προσθέτουμε την ετικέτα στο Frame Δρ. Κεραμόπουλος Ευκλείδης 59
60 33. public void actionperformed(actionevent ae) { 34. if(ae.getactioncommand().equals("first")) 35. jlab.settext("first button was pressed."); 36. else 37. jlab.settext("second button was pressed. "); 38. } public static void main(string args[]) { 41. SwingUtilities.invokeLater(new Runnable() { 42. public void run() { 43. new ButtonDemo(); 44. } 45. }); Όταν συμβαίνει ένα γεγονός τότε αυτό διαχειρίζεται από τη μέθοδο actionperformed. Το αντικείμενο ActionEvent αντιπροσωπεύει το γεγονός που δημιουργείται από το κουμπί και περνάει ως αντικείμενο. Με τη μέθοδο getactioncommand μαθαίνουμε ποιο κουμπί πατήθηκε. Το όνομα του κουμπιού είναι το κείμενο που περιέχει } 48. } Δρ. Κεραμόπουλος Ευκλείδης 60
61 Εκτέλεση Πάτημα του κουμπιού «First» Πάτημα του κουμπιού «Second» Δρ. Κεραμόπουλος Ευκλείδης 61
62 Δημιουργήσαμε ένα νέο αρχείο java ως JFrame Form. Ορίσαμε τις ιδιότητες title Δρ. Κεραμόπουλος Ευκλείδης 62
63 Και τις ιδιότητες preferredsize ενώ ορίστηκε αυτόματα η ιδιότητα Accessible Name Δρ. Κεραμόπουλος Ευκλείδης 63
64 Προσθέσαμε ένα Button και ορίσαμε την ιδιότητα του text Δρ. Κεραμόπουλος Ευκλείδης 64
65 Προσθέσαμε ακόμα ένα Button με text «Second Button» και ένα Label με text «Press a Button» Δρ. Κεραμόπουλος Ευκλείδης 65
66 Ορίζουμε η διάταξη του Frame να είναι FlowLayout Δρ. Κεραμόπουλος Ευκλείδης 66
67 Ορίζουμε τι πρέπει να γίνει όταν ενεργοποιηθεί το γεγονός των κουμπιών Δρ. Κεραμόπουλος Ευκλείδης 67
68 Μπορούμε να δούμε όλα τα αντικείμενα της εφαρμογής Προγραμματίζουμε τι θα συμβεί όταν πατηθεί το κάθε κουμπί Δρ. Κεραμόπουλος Ευκλείδης 68
69 Δημιουργία μίας εφαρμογής υλοποίησης χρονομέτρου. Θα περιέχει δύο κουμπιά, ένα start και ένα stop. Θα εμφανίζει το χρόνο που μεσολαβεί ανάμεσα στο πάτημα των δύο πλήκτρων. Δρ. Κεραμόπουλος Ευκλείδης 69
70 1. import java.awt.*; 2. import java.awt.event.*; 3. import javax.swing.*; 4. import java.util.*; Περιέχει την Calendar τάξη class StopWatch implements ActionListener { 7. JLabel jlab; 8. long start; 9. StopWatch() { 10. JFrame jfrm = new JFrame("A Simple Stopwatch"); 11. jfrm.setlayout(new FlowLayout()); 12. jfrm.setsize(230, 90); 13. jfrm.setdefaultcloseoperation(jframe.exit_on_close); 14. JButton jbtnstart = new JButton("Start"); 15. JButton jbtnstop = new JButton("Stop"); Δρ. Κεραμόπουλος Ευκλείδης 70
71 16. jbtnstart.addactionlistener(this); 17. jbtnstop.addactionlistener(this); jfrm.add(jbtnstart); 20. jfrm.add(jbtnstop); jlab = new JLabel("Press Start to begin timing."); 23. jfrm.add(jlab); 24. jfrm.setvisible(true); 25. } Δρ. Κεραμόπουλος Ευκλείδης 71
72 26. public void actionperformed(actionevent ae) { 27. Calendar cal = Calendar.getInstance(); 28. if(ae.getactioncommand().equals("start")) { 29. start = cal.gettimeinmillis(); 30. jlab.settext("stopwatch is Running..."); 31. } 32. else 33. jlab.settext("elapsed time is " (double) (cal.gettimeinmillis() - start)/1000); 35. } public static void main(string args[]) { 38. SwingUtilities.invokeLater(new Runnable() { 39. public void run() { 40. new StopWatch(); 41. } 42. }); 43. } 44. } Παίρνουμε την ώρα του συστήματος. Παίρνουμε την ώρα του συστήματος σε milliseconds Η διαφορά μετατρέπεται σε δευτερόλεπτα Δρ. Κεραμόπουλος Ευκλείδης 72
73 JTextField: Μπορεί ο χρήστης να εισάγει μία γραμμή κειμένου. Πατώντας το πλήκτρο <ENTER> δημιουργείται ένα γεγονός το οποίο μπορεί να καλυφθεί προσθέτοντας ActionListener και προγραμματίζοντας το actionperformed του JTextField Χρήσιμες μέθοδοι: gettext(): παίρνουμε το κείμενο που έχουμε εισάγει σε ένα jtextfield settext(): γράφουμε κείμενο σε ένα jtextfield setactioncommand(string): ορίζουμε σε ποιο όνομα θα αντιδρά ένα jtextfield Δρ. Κεραμόπουλος Ευκλείδης 73
74 Δημιουργία μίας εφαρμογής για να γίνει επίδειξη χρήσης κειμένου στην Java Swing. Δρ. Κεραμόπουλος Ευκλείδης 74
75 1. import java.awt.*; 2. import java.awt.event.*; 3. import javax.swing.*; class JTextFieldDemo implements ActionListener { JTextField jtf; 8. JLabel jlab; Δημιουργία αντικειμένου TextField JTextFieldDemo() { 11. JFrame jfrm = new JFrame("A Text Field Example"); 12. jfrm.setlayout(new FlowLayout()); 13. jfrm.setsize(240, 90); 14. jfrm.setdefaultcloseoperation(jframe.exit_on_close); Δρ. Κεραμόπουλος Ευκλείδης 75
76 15. jtf = new JTextField(10); 16. jtf.addactionlistener(this); 17. jfrm.add(jtf); 18. jlab = new JLabel(""); 19. jfrm.add(jlab); 20. jfrm.setvisible(true); 21. } public void actionperformed(actionevent ae) { 24. jlab.settext("current contents: " + jtf.gettext()); 25. } public static void main(string args[]) { 28. SwingUtilities.invokeLater(new Runnable() { 29. public void run() { 30. new JTextFieldDemo(); 31. } 32. }); 33. } 34. } Δρ. Κεραμόπουλος Ευκλείδης 76
77 Δημιουργία μίας εφαρμογής για να γίνει επίδειξη χρήσης δύο περιοχών κειμένου στην Java Swing. Δρ. Κεραμόπουλος Ευκλείδης 77
78 1. import java.awt.*; 2. import java.awt.event.*; 3. import javax.swing.*; class TwoTFDemo implements ActionListener { JTextField jtf1; 8. JTextField jtf2; 9. JLabel jlab; TwoTFDemo() { 12. JFrame jfrm = new JFrame("Use Two Text Fields"); 13. jfrm.setlayout(new FlowLayout()); 14. jfrm.setsize(240, 120); 15. jfrm.setdefaultcloseoperation(jframe.exit_on_close); 16. jtf1 = new JTextField(10); 17. jtf2 = new JTextField(10); Δρ. Κεραμόπουλος Ευκλείδης 78
79 18. jtf1.setactioncommand("one"); 19. jtf2.setactioncommand("two"); Ορίζουμε τα ονόματα των TextField jtf1.addactionlistener(this); 22. jtf2.addactionlistener(this); 23. jfrm.add(jtf1); 24. jfrm.add(jtf2); 25. jlab = new JLabel(""); 26. jfrm.add(jlab); 27. jfrm.setvisible(true); 28. } public void actionperformed(actionevent ae) { 31. if(ae.getactioncommand().equals("one")) 32. jlab.settext("enter pressed in tf1: + jtf1.gettext()); 33. else 34. jlab.settext("enter pressed in jtf2: + jtf2.gettext()); 35. } Δρ. Κεραμόπουλος Ευκλείδης 79
80 36. public static void main(string args[]) { 37. SwingUtilities.invokeLater(new Runnable() { 38. public void run() { 39. new TwoTFDemo(); 40. } 41. }); 42. } 43. } Δρ. Κεραμόπουλος Ευκλείδης 80
81 Δημιουργία μίας εφαρμογής υλοποίησης ενός απλού κωδικοποιητή-αποκωδικοποιητή. Η εφαρμογή αποτελείται από τρία κουμπιά (Code, Decode, Reset), δύο περιοχές κειμένου (μία για το code και μία για το decode) και δύο ετικέτες για το χαρακτηρισμό των περιοχών κειμένου. Δρ. Κεραμόπουλος Ευκλείδης 81
82 1. import java.awt.*; 2. import java.awt.event.*; 3. import javax.swing.*; class Coder implements ActionListener { JTextField jtfplaintext; 8. JTextField jtfciphertext; Coder() { 11. JFrame jfrm = new JFrame("A Simple Code Machine"); 12. jfrm.setlayout(new FlowLayout()); 13. jfrm.setsize(340, 120); 14. jfrm.setdefaultcloseoperation(jframe.exit_on_close); 15. JLabel jlabplaintext = new JLabel(" Plain Text: "); 16. JLabel jlabciphertext = new JLabel("Cipher Text: "); 17. jtfplaintext = new JTextField(20); 18. jtfciphertext = new JTextField(20); Δρ. Κεραμόπουλος Ευκλείδης 82
83 19. jtfplaintext.setactioncommand("encode"); 20. jtfciphertext.setactioncommand("decode"); jtfplaintext.addactionlistener(this); 23. jtfciphertext.addactionlistener(this); jfrm.add(jlabplaintext); 26. jfrm.add(jtfplaintext); 27. jfrm.add(jlabciphertext); 28. jfrm.add(jtfciphertext); JButton jbtnencode = new JButton("Encode"); 31. JButton jbtndecode = new JButton("Decode"); 32. JButton jbtnreset = new JButton("Reset"); jbtnencode.addactionlistener(this); 35. jbtndecode.addactionlistener(this); 36. jbtnreset.addactionlistener(this); Δρ. Κεραμόπουλος Ευκλείδης 83
84 37. jfrm.add(jbtnencode); 38. jfrm.add(jbtndecode); 39. jfrm.add(jbtnreset); 40. jfrm.setvisible(true); 41. } public void actionperformed(actionevent ae) { 44. if(ae.getactioncommand().equals("encode")) { 45. StringBuilder str = new StringBuilder(jtfPlaintext.getText()); for(int i=0; i<str.length(); i++) 48. str.setcharat(i, (char)(str.charat(i) + 1)); jtfciphertext.settext(str.tostring()); 51. } } Δρ. Κεραμόπουλος Ευκλείδης 84
85 54. else if(ae.getactioncommand().equals("decode")) { 55. StringBuilder str = new StringBuilder(jtfCiphertext.getText()); 56. for(int i=0; i<str.length(); i++) 57. str.setcharat(i, (char)(str.charat(i) - 1)); 58. jtfplaintext.settext(str.tostring()); 59. } 60. else { 61. jtfplaintext.settext(""); 62. jtfciphertext.settext(""); 63. } 64. } public static void main(string args[]) { 67. SwingUtilities.invokeLater(new Runnable() { 68. public void run() { 69. new Coder(); 70. } 71. }); 72. } 73. } Δρ. Κεραμόπουλος Ευκλείδης 85
86 επόμενη ενότητα
VK -14/10/2016 Σελίς 1
Ο Source Kώδικας της JFrame Φόρµας µε όνοµα Αsk1 Με δεξί κλικ στο Source Packages του project Ergastirio1 µε New -> JFrame Form επιλέξαµε να δηµιουργηθεί η JFrame φόρµα (πλαίσιο) µε όνοµα κλάσης Class
Διαβάστε περισσότεραΕργαστήριο 1-1 η Άσκηση - Ανάλυση
Εργαστήριο 1-1 η Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε εφαρμογή σε Java Swing με χρήση του IDE NetBeans όπου θα παρουσιάζεται ποιο κουμπί πατήθηκε. Η εφαρμογή θα μοιάζει ως εξής: Πρώτο Βήμα: Αρχική
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING Swing Τα GUIs (Graphical User Interfaces) είναι τα συνηθισμένα interfaces που χρησιμοποιούν παράθυρα, κουμπιά, menus,
Διαβάστε περισσότεραΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Στην Java εκτός από τις κλασικές εφαρμογές μπορούμε να δημιουργήσουμε και άλλους δύο τύπους εφαρμογών: τα Applets, τα οποία τρέχουν μέσα από κάποιο φυλλομετρητή (browser) και τρέχουν
Διαβάστε περισσότεραΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Τα όρια μπορούν να εμφανιστούν σε κάθε συστατικό της Java Swing. Με τα όρια μπορούμε να ορίσουμε εμφανή περιθώρια για κάθε συστατικό. Η εμφάνιση των ορίων είναι ιδιαίτερα χρήσιμη
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING Swing Τα GUIs (Graphical User Interfaces) είναι τα συνηθισμένα interfaces που χρησιμοποιούν παράθυρα, κουμπιά, menus,
Διαβάστε περισσότεραημιουργία Γραφικού Περιβάλλοντος
Γραφικό Περιβάλλον Χρήστη. Πλαίσια και παράθυρα. Κουμπιά. Ετικέτες και πεδία κειμένου. Πλαίσια ελέγχου. Σύνθετα πλαίσια. Περιοχές κειμένου. Πάνελς. Διαχειριστές Διάταξης. Απόκριση σε δεδομένα που εισάγει
Διαβάστε περισσότεραΕισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #17
Week 10: Graphical User Interfaces Έννοιες του προγραμματισμού ΓΠΕ [GUI] Διάλεξη #17: Εισαγωγή στα Γραφικά Περιβάλλοντα Επικοινωνίας [Graphical User Interfaces] Συστατικά [components] Διάταξη [layout]
Διαβάστε περισσότεραΟπτικός Προγραμματισμός σε NetBeans με Java Swing
Οπτικός Προγραμματισμός σε NetBeans με Java Swing 1 NetBeans Το NetBeans είναι το επίσημο ολοκληρωμένο περιβάλλον ανάπτυξης (IDE - Integrated Development Environment) για υλοποίηση εφαρμογών σε Java 8.
Διαβάστε περισσότεραWeek 10: Graphical User Interfaces
Week 10: Graphical User Interfaces Έννοιες του προγραµµατισµού ΓΠΕ [GUI] Εβδοµάδα 10: Εισαγωγή στα Γραφικά Περιβάλλοντα Επικοινωνίας [Graphical User Interfaces] Συστατικά [components] ιάταξη [layout] [event-driven
Διαβάστε περισσότεραVK -14/10/2016 Σελίς 1
ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ ΕΙΣΑΓΩΓΗ Προγραµµατισµός µε Γραφικά (Εισαγωγή στη JavaSwing και γνωριµία µε το εργαλείο NetBeans) Εξαιρετικό παράδειγµα που συνδυάζει όλες τις έννοιες του αντικειµενοστρεφή
Διαβάστε περισσότεραΕργαστήριο 2 - Άσκηση - Ανάλυση
Εργαστήριο 2 - Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε την εφαρμογή Αριθμήτηριο σε Java Swing με χρήση NetBeans ακολουθώντας τις παρακάτω οδηγίες. 1. Η εφαρμογή θα σχεδιασθεί σε ένα εξωτερικό υποδοχέα
Διαβάστε περισσότεραΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ
ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Το JList είναι ένα από τα τρία συστατικά (JComboBox, JSpinner) που χρησιμοποιούνται στη Java Swing για την επιλογή από λίστα πληροφοριών. Με το συστατικό JList μπορούμε να επιλέξουμε
Διαβάστε περισσότεραΕιδικά Θέματα Προγραμματισμού
Ειδικά Θέματα Προγραμματισμού Ενότητα 8: Java Swing Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό
Διαβάστε περισσότεραΕισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #18
Week 12: GUIs with Swing Προγραμματισμός ΓΠΕ: ανασκόπηση Εισαγόμενα πακέτα Java Διαλεξη #18: Γραφικά Περιβάλλοντα Επικοινωνίας Java με Swing «Στήσιμο»του αυτόνομου παράθυρου [frame] Συστατικά [components]
Διαβάστε περισσότερα8.1 Top-Level Swing Containers και Swing Components
Εισαγωγή στη γλώσσα προγραμματισμού Java 59 8. Γραφικές διεπαφές τύπου Swing (Swing GUIs) Τα πακέτα που αρχίζουν με το πρόθεμα javax.swing παρέχουν ευέλικτα και ισχυρά εργαλεία ανάπτυξης GUI. Ιδιαίτερα
Διαβάστε περισσότεραWeek 12: GUIs with Swing
Week 12: GUIs with Swing Προγραµµατισµός ΓΠΕ: ανασκόπηση Εισαγόµενα πακέτα Java Εβδοµάδα 12: Γραφικά Περιβάλλοντα Επικοινωνίας Java µε Swing «Στήσιµο»του αυτόνοµου παράθυρου [frame] Συστατικά [components]
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ SWING Βασικά στοιχεία ενός GUI Ένα Graphical User Interface-GUI (στα ελληνικά Γραφική Διεπαφή με το Χρήστη) είναι το μέρος του
Διαβάστε περισσότεραΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1)
ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1) Πλεονεκτήματα έναντι του awt Περισσότερα συστατικά Επεκτεταμένα χαρακτηριστικά συστατικών Καλύτερη εμφάνιση και αίσθηση Καλύτερος χειρισμός συμβάντων Πιο συμβατά προγράμματα
Διαβάστε περισσότεραAsk1, Ask2, Ask3. private void jbutton1actionperformed(java.awt.event.actionevent evt) { jlabel1.settext( "You pressed the 1st button" ); }
ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 1 o ΕΡΓΑΣΤΗΡΙO-3ασκήσεις Θα χρησιµοποιηθεί το πακέτο ΝetBeansIDE Θα δηµιουργήσουµε µια νέα εφαρµογή/ Project µε όνοµα π.χ. Ergastirio1 επιλέγοντας από το 1 ο µενού File /
Διαβάστε περισσότερα8. Το μοντέλο συμβάντων του AWT
8. Το μοντέλο συμβάντων του AWT Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να γράφετε κώδικα που θα αντιμετωπίζει συμβάντα που θα συμβαίνουν στη διεπαφή με το χρήστη Να χρησιμοποιείτε τις κατάλληλες διεπαφές
Διαβάστε περισσότεραΕργαστήριο 3 - Άσκηση - Ανάλυση
Εργαστήριο 3 - Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε την εφαρμογή «Αγορά Σπιτιού» σε Java Swing με χρήση NetBeans ακολουθώντας τις παρακάτω οδηγίες. 1. Η εφαρμογή θα σχεδιασθεί σε ένα εξωτερικό υποδοχέα
Διαβάστε περισσότεραΕργαστήριο 5 - Άσκηση - Ανάλυση
Εργαστήριο 5 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε την εφαρµογή «ιακο ές» σε Java Swing µε χρήση NetBeans, χρησιµο οιώντας τις εικόνες ου θα βρείτε στο moodle και ακολουθώντας τις αρακάτω οδηγίες:
Διαβάστε περισσότεραNew Project Windows Forms Applications
Ανάπτυξη απλής εφαρµογής. Solutions, Projects, GUI, Events, Debugging. New Project Windows Forms Applications Name: ΜyLucky7 Location: C:\... Solution Name: ΜyLucky7 OK (επιλογή έκδοσης του πλαισίου Εφαρµογών.NET)
Διαβάστε περισσότεραA3.3 Γραφικά Περιβάλλοντα Επικοινωνίας και Διαχείριση Παραθύρων
A3.3 Γραφικά Περιβάλλοντα Επικοινωνίας και Διαχείριση Παραθύρων Τι θα μάθουμε σήμερα: Να αναφέρουμε τα κύρια χαρακτηριστικά ενός Γραφικού Περιβάλλοντος Επικοινωνίας Να εξηγούμε τη χρήση των κουμπιών του
Διαβάστε περισσότεραΕιδικά Θέματα Προγραμματισμού
Ειδικά Θέματα Προγραμματισμού Ενότητα 7: Abstract Window Toolkit (AWT) Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΕργαστήριο 7 - Άσκηση - Ανάλυση
Εργαστήριο 7 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε την εφαρµογή «simple editor» σε Java Swing µε χρήση NetBeans. Στην εφαρµογή αυτή ο χρήστης θα µ ορεί να φορτώνει, α οθηκεύει α λό αρχείο κειµένου
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1
Διαβάστε περισσότεραΕργαστήριο 4 - Άσκηση - Ανάλυση
Εργαστήριο 4 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε την εφαρµογή «Audio Player» σε Java Swing µε χρήση NetBeans ακολουθώντας τις αρακάτω οδηγίες. 1. Η εφαρµογή θα σχεδιασθεί σε ένα εξωτερικό υ οδοχέα
Διαβάστε περισσότεραΠεριεχόµενα. Πρόλογος...15
Περιεχόµενα Πρόλογος...15 Κεφάλαιο 1: Εισαγωγή...17 Τι είναι η Java... 17 Η ιστορία της Java... 21 Εκδόσεις της Java... 23 Ξεκίνηµα µε την Java... 24 Το περιβάλλον της γλώσσας... 28 ηµιουργία µιας εφαρµογής
Διαβάστε περισσότεραΤ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων
Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται
Διαβάστε περισσότεραΑντικειµενοστρεφής Προγραµµατισµός
16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
Διαβάστε περισσότεραΜέρος ΙΙ Εφαρμογές γραφικών με το πακέτο swing - 5. Περιεχόμενα
Μέρος ΙΙ Εφαρμογές γραφικών με το πακέτο swing - 5 Περιεχόμενα 1 Βασικές Έννοιες σε Εφαρμογές με Γραφικά... 12 1.1 Οι συνιστώσες τηs Java... 12 1.2 Tα πακέτα για συνιστώσες.... 12 1.3 Η κλάσεις στο πακέτο
Διαβάστε περισσότεραΒιοϊατρική τεχνολογία
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr
Διαβάστε περισσότεραΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΕΙΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ιανουάριος 2008 Οι απαντήσεις να είναι καθαρογραμμένες με ευδιάκριτους όλους του χαρακτήρες.
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΕΙΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ιανουάριος 2008 Οι απαντήσεις να είναι καθαρογραμμένες με ευδιάκριτους όλους του χαρακτήρες. Θέμα 1. Δημιουργήστε μια κλάση αντικειμένων Complex η οποία να περιγράφει
Διαβάστε περισσότερα(3) Από την εργαλειοθήκη επιλέξτε το εργαλείο «ετικέτας (Label)». Δημιουργήστε μια ετικέτα στην φόρμα σας.
Σαχπατζίδης Αβραάμ Καθηγητής Πληροφορικής Π.Ε 20 Master of Arts (M.A) in "Gender, New Forms of Education, New Forms of Employment and New Technologies in the Information Age". ΚΕΦΑΛΑΙΟ 2 Χρήση εργαλείων
Διαβάστε περισσότερα7. Ανάπτυξη GUI σε Java
7. Ανάπτυξη GUI σε Java Όταν ολοκληρώσετε αυτό το κεφάλαιο, θα μπορείτε: Να περιγράφετε το πακέτο AWT και τις συνιστώσες του. Να εξηγείτε τους containers (περιέκτες), components (συνιστώσες) και layout
Διαβάστε περισσότεραΕργαστήριο 8 - Άσκηση - Ανάλυση
Εργαστήριο 8 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε την εφαρµογή «Simple Menu Editor» σε Java Swing µε χρήση NetBeans. Στην εφαρµογή αυτή ο χρήστης θα µ ορεί να φορτώνει, α οθηκεύει α λό αρχείο κειµένου
Διαβάστε περισσότεραΒυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010
Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Δημιουργία ενός απλού παιχνιδιού με το Gamemaker (μετάφραση από το http://www.stuffucanuse.com/downloads/gamemaker-introductionlessons/free_game_downloads_gamemaker.htm)
Διαβάστε περισσότερα10.1 Γενικά για τα streams
10.1 Γενικά για τα streams Για την αλληλεπίδραση ενός προγράµµατος µε ένα αρχείο, δηλαδή για την αποθήκευση ή την ανάγνωση δεδοµένων από αυτό χρησιµοποιείται ένα σύστηµα επικοινωνίας που καλείται streams.
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 18: Προγραμματισμός με Γραφικά (Graphics Programming) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Οι βιβλιοθήκες AWT και SWING, κύρια αντικείμενα -Προγραμματισμός με συμβάντα (event-driven
Διαβάστε περισσότεραΠρογραμματισμός Διαδικτύου
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προγραμματισμός Διαδικτύου Ενότητα 11 : Το πακέτο SWING Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής
Διαβάστε περισσότεραΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ
ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0 ΤΙ ΕΙΝΑΙ ΤΟ ADVANCED Οι Advanced θεματικές ενότητες είναι είναι κατάλληλες για άτομα που επιθυμούν να συνεχίσουν σπουδές
Διαβάστε περισσότεραΕργαστήριο Java. Αντικείµενο: Δίκτυα. Χειρισµός URLs. Άσκηση 1. Lab11. Πακέτο java.net
Εργαστήριο Java Lab11 Αντικείµενο: Δίκτυα Πακέτο java.net H Java παρέχει ένα σύνολο από ενσωµατωµένες δυνατότητες για δηµιουργία εφαρµογών στο Internet ή σε τοπικά δίκτυα. H Java παρέχει τα stream sockets
Διαβάστε περισσότεραΕργαστήριο 10 Άσκηση 1 - Ανάλυση
Εργαστήριο 10 Άσκηση 1 - Ανάλυση Εκφώνηση: Στο moodle σας δίνονται οι εικόνες έξι ηρώων της ταινίας Star Wars. Για κάθε ήρωα σας δίνεται µία µεγάλη και µία µικρή εικόνα. Ε ίσης, σας δίνονται και οι εικόνες
Διαβάστε περισσότεραI (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr 1 Δομημένος προγραμματισμός έναντι αντικειμενοστρεφούς
Διαβάστε περισσότεραΕργαστήριο 9 - Άσκηση - Ανάλυση
Εργαστήριο 9 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε ένα αντίγραφο της άσκησης της 8ης εργαστηριακής εβδοµάδας. Κάντε τις α αραίτητες τρο ο οιήσεις ώστε να αντικαταστήσετε τα δύο jdialog ου χρησιµο οιήσατε
Διαβάστε περισσότεραΤο επόμενο σχήμα εμφανίζει την ιεραρχία των GUI-components κλάσεων μαζί με κάποιες επιπλέον συμπληρωματικές κλάσεις που διαχειρίζονται ένα GUI.
Εισαγωγή στη γλώσσα προγραμματισμού Java 47 7. Abstract Windowing Toolkit (AWT) 7.1 Βασικά στοιχεία ενός GUI Ένα Graphical User Interface-GUI (στα ελληνικά Γραφική Διεπαφή με το Χρήστη) είναι το μέρος
Διαβάστε περισσότεραΚλάσεις στη Java. Παύλος Εφραιμίδης. Java Κλάσεις στη Java 1
Κλάσεις στη Java Παύλος Εφραιμίδης Java Κλάσεις στη Java 1 Κλάσεις στην Java Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 2
Διαβάστε περισσότεραΚλάσεις στη Java. Στοίβα - Stack. Δήλωση της κλάσης. ΗκλάσηVector της Java. Ηκλάση Stack
Κλάσεις στην Java Κλάσεις στη Java Παύλος Εφραιμίδης Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 1 Java Κλάσεις στη Java 2
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Περιεχόμενα Java Classes Java Objects Java
Διαβάστε περισσότεραΟρισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα
ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input
Διαβάστε περισσότεραΤο πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.
Το πρόγραμμα HelloWorld.java Σχόλια στη Java HelloWorld Παύλος Εφραιμίδης pefraimi ee.duth.gr Java Το πρόγραμμα HelloWorld 1 Java Το πρόγραμμα HelloWorld 2 Σχόλια στη Java ΗγλώσσαJava υποστηρίζει
Διαβάστε περισσότεραΓ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL
Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC Η Visual Basic είναι μια γλώσσα προγραμματισμού οδηγούμενη από συμβάντα που έχει ένα ολοκληρωμένο περιβάλλον ανάπτυξης Έχει δημιουργηθεί από τη
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Χρήση εργαλείων Εικόνων, Εντολών και Ετικετών ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ενότητα: Χρήση εργαλείων Εικόνων, Εντολών και Ετικετών ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Διαβάστε περισσότεραI (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
Διαβάστε περισσότεραΕφαρμογή Αναζήτησης στον Ελληνικό Γεωγραφικό Χώρο
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εφαρμογή Αναζήτησης στον Ελληνικό Γεωγραφικό Χώρο Καβάλα 2012 Σπουδαστής : Λιάνος Άγγελος,
Διαβάστε περισσότεραΟντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 4: JAVA: ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ, ΓΡΑΦΙΚΑ, APPLETS Γραφικές Διεπαφές Χρήστη - awt ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING Swing H Swing είναι η βιβλιοθήκη της Java για τον προγραμματισμό GUIs (Graphical User Interfaces) [και πιο γενικά για
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);
Διαβάστε περισσότεραΕκφωνήσεις ασκήσεων εργαστηρίου 2 (java threads)
Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Σχολή Τεχνολογικών Εφαρμογών Ακαδημαϊκό έτος 2016-2017 ΤΕΙ Ηπείρου - Άρτα Κατανεμημένα και Παράλληλα Συστήματα (εργαστήριο) Γκόγκος Χρήστος Εκφωνήσεις ασκήσεων εργαστηρίου
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις 2 Ανατομία ενός προγράμματος
Διαβάστε περισσότεραΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)
ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.
Διαβάστε περισσότερααντίστοιχο γεγονός. Όταν όντως το κουμπί
Εισαγωγή στην αλληλεπίδραση Τα έργα που έχουμε αναπτύξει έως τώρα τρέχουν ένα σενάριο και σταματούν. Τα αντικείμενά μας αλλάζουν θέση και ενδυμασίες, παίζουν διαφορετικούς ήχους και ζωγραφίζουν διάφορα
Διαβάστε περισσότεραΔραστηριότητα 1. Προγραμματίζω τον υπολογιστή (10 ώρες).
Προγραμματίζω τον υπολογιστή (10 ώρες). Δραστηριότητα 1 Στόχος της δραστηριότητας είναι να δημιουργήσουμε μια απλή εφαρμογή η οποία θα περιέχει ένα κουμπί και μια εικόνα μιας γάτας. Όταν ο μαθητής πατήσει
Διαβάστε περισσότερα12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006)
exercise 6new_10 12/5/2008 12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006) 12.6.1. Περιγραφή Θεωρήστε την γραφική διεπαφή της αριθµοµηχανής των MS Windows. Μια παρόµοια διεπαφή (δες
Διαβάστε περισσότεραΤα Windows Πολύ Απλά και Πολύ Σύντομα
Σαχπατζίδης Αβραάμ Καθηγητής Πληροφορικής Π.Ε 20 Master of Arts (M.A) in "Gender, New Forms of Education, New Forms of Employment and New Technologies in the Information Age". Τα Windows Πολύ Απλά και
Διαβάστε περισσότεραΤι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;
Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class
Διαβάστε περισσότεραΠεριεχόμενα. Λίγα λόγια από το συγγραφέα Windows Vista Επιφάνεια εργασίας Γραμμή εργασιών... 31
Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 91 Windows Vista... 9 92 Επιφάνεια εργασίας... 18 93 Γραμμή εργασιών... 31 94 Χειρισμός παραθύρων... 53 95 Το παράθυρο Υπολογιστής... 77 96 Το μενού Έναρξη...
Διαβάστε περισσότεραηµιουργία ιαλογικών Προγραµµάτων για το Web
ηµιουργία ιαλογικών Προγραµµάτων για το Web Βοηθητικές Εφαρµογές (). Οι βασικές µέθοδοι των Βοηθητικών Εφαρµογών. Η µέθοδος init(). Οι µέθοδοι start() και stop(). Η µέθοδος paint(). Η µέθοδος destroy().
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors, equals, tostring
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Constructors, equals, tostring Constructors (Δημιουργοί) O Constructor είναι μια «μέθοδος» η οποία καλείται όταν δημιουργούμε το αντικείμενο
Διαβάστε περισσότεραΣύνθεταγραφικάσ ε Java
Σύνθεταγραφικάσ ε Java ΙωάννηςΓ.Τσ ούλος May 15, 2013 1 Δημιουργία απλών παραθύρων Τοεπόμενοπαράδειγμαδημιουργείέναπαράθυρομεδύοσ τατικάκείμενασ εαυτό. Στοπρώτοσ τατικόκείμενοτοκείμενοείναιαπλόκαισ τοδεύτερογίνεταιχρήσ
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING Επισκόπηση Swing H Swing είναι η βιβλιοθήκη της Java για τον προγραμματισμό GUIs (Graphical User Interfaces) [και πιο
Διαβάστε περισσότεραΑντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων
Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,
Διαβάστε περισσότεραΤ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων
Εργαστήριο Java Αντικείμενο: Αρχεία Πακέτο java.io Πακέτο java.io.zip Στην Java δεν υπάρχει η έννοια των εγγραφών μέσα σε ένα αρχείο. Ο προγραμματιστής πρέπει να κατασκευάσει το αρχείο κατάλληλα έτσι ώστε
Διαβάστε περισσότερα9.1 JFC Swing. 9.1 JFC Swing Java (GUI) Java. Java Foundation Classes (JFC) Swing GUI. JFC Card Pile GameFrame GUI
9 2013 6 11 9.1 JFC Swing.................................... 9 1 9.2 (Graphics )................. 9 2 9.3.................................. 9 4 9.4 (Color ).............................. 9 6 9.5.......................................
Διαβάστε περισσότεραΕργαστήριο 6 - Άσκηση - Ανάλυση
Εργαστήριο 6 - Άσκηση - Ανάλυση Εκφώνηση: ηµιουργείστε την εφαρµογή «fastfood» σε Java Swing µε χρήση NetBeans χρησιµο οιώντας τις εικόνες ου θα βρείτε στο moodle. Στην εφαρµογή ο υ άλληλος του µαγαζιού
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Ισότητα Strings class StringTest public static void main(string args[]) String x1 = "java"; String y1 = "java"; System.out.println("1.
Διαβάστε περισσότεραΕισαγωγή στον Αντικειμενοστρέφή Προγραμματισμό Διάλεξη #13
Wrapper Classes, Abstract Classes and Interfaces Διάλεξη #13: Μεταβλητές/μέθοδοι κλάσης, αφηρημένες κλάσεις και διαπροσωπείες Μεταβλητές /πεδία κλάσης [class variables] Τα αντικείμενα ανήκουν σε κλάσεις
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II Strings Η κλάση String είναι προκαθορισμένη κλάση της Java που μας επιτρέπει να χειριζόμαστε αλφαριθμητικά. Ο τελεστής + μας επιτρέπει
Διαβάστε περισσότεραWrapper Classes, Abstract Classes and Interfaces
Wrapper Classes, Abstract Classes and Interfaces Εβδοµάδα 3: Κλάσεις συσκευαστές, αφηρηµένες κλάσεις και διαπροσωπείες Αντικείµενα και µη-αντικείµενα Η Java παρέχει τύπους αντικειµένων και απλούς τύπους
Διαβάστε περισσότεραΒρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795
Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795 Περιεχόμενα Εισαγωγή Εγκατάσταση Δημιουργία νέου project Java Editor Perspectives Δημιουργία source folders Προσθήκη νέου αρχείου στο project Εισάγωντας
Διαβάστε περισσότεραΓραφικές ιεπαφές Χρήστη και Γραφικά
Κεφάλαιο 18 Γραφικές ιεπαφές Χρήστη και Γραφικά Νοηµοσύνη είναι η ικανότητα να δηµιουργούµε τεχνητά αντικείµενα, ιδιαίτερα εργαλεία που φτιάχνουν εργαλεία. Henri Bergson Η ζωγραφική είναι µόνο µια γέφυρα
Διαβάστε περισσότεραΕργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών
Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να καταλάβουν την διαφορά ανάμεσα σε τοπικές και καθολικές μεταβλητές. Nα κάνουν αποσφαλμάτωση
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 - Παράδειγμα με switch (το οποίο δείχνει επίσης πότε σε μια άσκηση χρησιμοποιούμε user-input και System.out.println() για έξοδο και πότε χρησιμοποιούμε είσοδο σε μέθοδο
Διαβάστε περισσότεραHelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1
HelloWorld Παύλος Εφραιμίδης Java Το πρόγραμμα HelloWorld 1 Το πρόγραμμα HelloWorld.java Σχόλια στη Java /** * The HelloWorld class */ class HelloWorld { public static void main(string[] args) { System.out.println("Hello
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Στην άσκηση αυτή θα υλοποιήσετε μια κλάση RandomVector η οποία διαχειρίζεται ένα τυχαίο διάνυσμα ακεραίων το οποίο μπορεί να έχει οποιοδήποτε
Διαβάστε περισσότεραΚαλές επιτυχίες παιδιά στα υπόλοιπα μαθήματά σας και καλές γιορτές!!!!
Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Ακαδημαϊκό Έτος 2016-17, Χειμερινό Εξάμηνο Τελική Εξέταση
Διαβάστε περισσότεραΟντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 4: JAVA: ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ, ΓΡΑΦΙΚΑ, APPLETS Γραφικές Διεπαφές Χρήστη - Swing ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών
Διαβάστε περισσότεραΤο δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ
Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ Στο παιχνίδι υπάρχουν τουβλάκια διαφόρων χρωμάτων. Σκοπός του παιχνιδιού είναι να καταστραφούν όλα τα τουβλάκια. Ο παίκτης χειρίζεται από το πληκτρολόγιο μία ρακέτα. Ένα μπαλάκι
Διαβάστε περισσότερα1. Γνωριμία Με Το Περιβάλλον Του Ηλεκτρονικού Υπολογιστή
WINDOWS ΣΤΟΧΟΙ: 1. Γνωριμία Με Το Περιβάλλον Του Ηλεκτρονικού Υπολογιστή 2. Γνωριμία Με Την Επιφάνεια Εργασίας (Desktop) 3. Ta Βασικά Εικονίδια Της Επιφάνειας Εργασίας (Desktop) 4. Κουμπιά Παραθύρων 5.
Διαβάστε περισσότεραΚλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα
Αντικειµενοστραφής Προγραµµατισµός Αντικείµενα Ιεραρχία κλάσεων. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Η χρήση του this και του super Αντικειµενοστραφής
Διαβάστε περισσότεραΣυνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010
Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java
Διαβάστε περισσότεραΔημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος.
Μάθημα 4ο Δημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος. Σε αυτό το μάθημα θα δημιουργήσουμε ένα απλό παιχνίδι με τη βοήθεια του Director. Το παιχνίδι θα είναι στο ύφος του γνωστού Pacman,
Διαβάστε περισσότερα