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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 Κεφάλαιο 18 Γραφικές ιεπαφές Χρήστη και Γραφικά Νοηµοσύνη είναι η ικανότητα να δηµιουργούµε τεχνητά αντικείµενα, ιδιαίτερα εργαλεία που φτιάχνουν εργαλεία. Henri Bergson Η ζωγραφική είναι µόνο µια γέφυρα που συνδέει το νου του ζωγράφου µε αυτόν του θεατή. Eugène Delacroix Μια εικόνα αξίζει όσο δέκα χιλιάδες λέξεις. Κινέζικη παροιµία Υπερβολή είναι να ζωγραφίζεις ένα φίδι και να του προσθέτεις πόδια. Παροιµία 18.1 Εισαγωγή Όλες οι εφαρµογές που εξετάσαµε µέχρι τώρα έπαιρναν την είσοδό τους είτε από τη γραµµή των εντολών είτε από το πληκτρολόγιο και εµφάνιζαν την έξοδό τους στην οθόνη µε απλό τρόπο. Η Java διαθέτει τα πακέτα java.awt, δηλαδή την εργαλειοθήκη αφηρηµένων παραθύρων (abstract window toolkit), και javax.swing που περιέχουν όλες τις τάξεις και τις διεπαφές, τα µέλη των οποίων βοηθούν τους προγραµµατιστές να ορίζουν Γραφικές ιεπαφές Χρήστη-Γ Χ (Graphical User Interfaces-GUIs) και να σχεδιάζουν γραφικά για τις εφαρµογές ή τις µικροεφαρµογές τους (βλ. Κεφ. 20). Οι Γ Χ κάνουν ευκολότερη την είσοδο των δεδοµένων και την εµφάνιση των αποτελεσµάτων σε διάφορα παράθυρα στην οθόνη. Γ Χ κτίζονται από συνθετικά µέρη (components) ή συστατικά που ονοµάζονται µερικές φορές µηχανηµατάκια των παραθύρων (window gadgets). Ένα συστατικό µιας Γ Χ είναι ένα αντικείµενο µε το οποίο ο χρήστης πιθανώς αλληλεπιδρά µέσω του ποντικιού, του πληκτρολογίου ή κάποιου άλλου τρόπου εισαγωγής δεδοµένων, για παράδειγµα µέσω αναγνώρισης φωνής. Τα συστατικά µιας Γραφικής ιεπαφής Χρήστη (Γ Χ) διευκολύνουν την είσοδο των δεδοµένων και τη µορφοποίηση ή την αναπαράσταση των αποτελεσµάτων που εµφανίζονται στην οθόνη. Μια τυπική τέτοια εµφάνιση περιέχει συνήθως: ένα παράθυρο µε µια ράβδο τίτλου (title bar), κουµπιά (buttons), τα οποία ο χρήστης 493

2 494 Προγραµµατισµός µε Java µπορεί να πιέσει µε το ποντίκι, ένα ή περισσότερα πεδία κειµένου (text fields), µέσα στα οπoία ο χρήστης µπορεί να πληκτρολογήσει κάποιο κείµενο, και πιθανώς ένα ή περισσότερα µενού, τα περιεχόµενα των οποίων µπορεί ο χρήστης να επιλέξει µε το ποντίκι ή το πληκτρολόγιο. Τα συστατικά που παρέχει το πακέτο java.awt θεωρούνται βαριά (heavyweight), µε την έννοια ότι εµφανίζονται µε διαφορετικό τρόπο στις διάφορες πλατφόρµες συστηµάτων. Σε αντίθεση, το πακέτο javax.swing περιέχει ένα σύνολο από ελαφρά συστατικά (lightweight components) που είναι σχεδόν όλα γραµµένα στην ίδια την Java και τα οποία, στο µεγαλύτερο δυνατό βαθµό, συµπεριφέρονται µε τον ίδιο τρόπο σ όλες τις πλατφόρµες υλισµικού και λειτουργικών συστηµάτων. Η παρακάτω ιεραρχία δείχνει τη συγγένεια µερικών από τις τάξεις των πακέτων java.awt και javax.swing. Με έντονα έχουν σηµειωθεί οι τάξεις που θα περιγράψουµε στο κεφάλαιο αυτό, καθώς και στο Κεφάλαιο 20. java.lang.object java.awt.component java.awt.container java.awt.window java.awt.frame javax.swing.jframe javax.swing.jcomponent javax.swing.jlabel javax.swing.jtextcomponent javax.swing.jtextfield javax.swing.jtextarea javax.swing.abstractbutton javax.swing.jbutton javax.swing.jpanel javax.swing.joptionpane javax.swing.jscrollpane java.awt.dialog javax.swing.jdialog java.awt.graphics java.awt.color java.awt.font java.awt.fontmetrics java.awt.panel java.applet.applet javax.swing.japplet Πίνακας Μερική ιεραρχία τάξεων των πακέτων java.awt και javax.swing.

3 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά Συστατικά: τάξη java.awt.component Η τάξη Component ορίζει όλες τις κοινές ιδιότητες και συµπεριφορές όλων των υποτάξεών της. Περιέχει µεθόδους που προσδιορίζουν το µέγεθος ενός συστατικού, το αν είναι ορατό ή όχι, τη γραµµατοσειρά των χαρακτήρων του, το χρώµα του και πιθανώς και κάποιους τρόπους µε τους οποίους αυτό µπορεί να ανταποκριθεί σε γεγονότα. Μερικές από τις µεθόδους τις τάξης Component είναι: public void setlocation (int x, int y) µετακινεί το συστατικό. Η νέα θέση της πάνω αριστερής γωνίας του δίνεται από τις συντεταγµένες x και y public void setbounds (int x, int y, int πλάτος, int ύψος) µετακινεί και αλλάζει το µέγεθος του συστατικού. Η νέα θέση της πάνω αριστερής γωνίας του δίνεται από τις συντεταγµένες x και y, ενώ το νέο του µέγεθος προσδιορίζεται από τις παραµέτρους πλάτος και ύψος public void setsize (int πλάτος, int ύψος) αλλάζει το µέγεθος του συστατικού, έτσι ώστε αυτό να έχει πλάτος πλάτος και ύψος ύψος public void setfont (Font f) προσδιορίζει τη µορφή της γραµµατοσειράς του συστατικού. Αν η παράµετρος f είναι ίση µε null, τότε το συστατικό κληρονοµεί τη µορφή της γραµµατοσειράς του γονικού του συστατικού public void setforeground (Color c) προσδιορίζει το προσκηνιακό χρώµα του συστατικού. Αν η παράµετρος c είναι ίση µε null, τότε το συστατικό κληρονοµεί το προσκηνιακό χρώµα του γονικού του συστατικού public void setbackground (Color c) προσδιορίζει το παρασκηνιακό χρώµα του συστατικού. Αν η παράµετρος c είναι ίση µε null, τότε το συστατικό κληρονοµεί το παρασκηνιακό χρώµα του γονικού του συστατικού public void setvisible (boolean b) κάνει ορατό ή αόρατο (εµφανίζει ή κρύβει) το συστατικό, ανάλογα µε το αν η τιµή της παραµέτρου b είναι ίση µε true ή false αντίστοιχα public void addkeylistener (KeyListener l)

4 496 Προγραµµατισµός µε Java προσθέτει τον ακροατή l για να ακούει γεγονότα του πληκτρολογίου από το συστατικό αυτό (βλ. Κεφ ). Αν η παράµετρος l είναι null δε γίνεται τίποτα και δε ρίχνεται καµία εξαίρεση public void addmouselistener (MouseListener l) προσθέτει τον ακροατή l για να ακούει γεγονότα του ποντικιού από το συστατικό αυτό (βλ. Κεφ και ). Αν η παράµετρος l είναι null δε γίνεται τίποτα και δε ρίχνεται καµία εξαίρεση public void addmousemotionlistener (MouseMotionListener l) προσθέτει τον ακροατή l για να ακούει γεγονότα κίνησης του ποντικιού από το συστατικό αυτό (βλ. Κεφ και ). Αν η παράµετρος l είναι null δε γίνεται τίποτα και δε ρίχνεται καµία εξαίρεση public void paint (Graphics g) ζωγραφίζει το συστατικό. Η µέθοδος αυτή καλείται αυτόµατα από το σύστηµα όταν το συστατικό πρέπει να ζωγραφιστεί, για παράδειγµα όταν αυτό εµφανίζεται για πρώτη φορά ή όταν αυτό έχει καταστραφεί και χρειάζεται να διορθωθεί. Παίρνει ως παράµετρο µια αναφορά της αφηρηµένης τάξης Graphics του πακέτου java.awt, η οποία προσδιορίζει την περιοχή στην οποία πρέπει να ζωγραφιστεί το συστατικό (βλ. και Κεφ. 18.7, παρακάτω). Εφόσον η µέθοδος paint καλείται αυτόµατα από το σύστηµα, πολύ σπάνια χρειάζεται να κληθεί άµεσα από τον προγραµµατιστή συνήθως ακυρώνεται από αυτόν. Αν ο προγραµµατιστής επιθυµεί να ξαναζωγραφίσει το συστατικό, τότε καλεί τη µέθοδο repaint() (βλ. παρακάτω) public void repaint () ξαναζωγραφίζει το συστατικό. Αν το συστατικό είναι ελαφρύ, τότε η κλήση της µεθόδου αυτής προκαλεί την κλήση της µεθόδου paint του συστατικού το συντοµότερο δυνατόν. ιαφορετικά αν το συστατικό είναι βαρύ η κλήση της µεθόδου αυτής προκαλεί την κλήση της µεθόδου update του συστατικού το συντοµότερο δυνατόν και public void update (Graphics g) ενηµερώνει το συστατικό. Αν το συστατικό είναι βαρύ, τότε η κλήση της µεθόδου update είναι το αποτέλεσµα µιας κλήσης της µεθόδου repaint. Η µέθοδος update καλεί τη µέθοδο paint του συστατικού για να ξανασχεδιάσει το συστατικό. Παίρνει ως παράµετρο µια αναφορά της αφηρηµένης τάξης Graphics, η οποία προσδιορίζει την περιοχή σχεδίασης του συστατικού. Όπως και η µέθοδος paint, έτσι και η µέθοδος update πολύ σπάνια χρειάζεται να κληθεί άµεσα από

5 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 497 τον προγραµµατιστή, αν και η τελευταία µπορεί να ακυρωθεί για να ελαττώσει το τρεµοπαίξιµο κινούµενων γραφικών Υποδοχείς: Τάξη java.awt.container Ένα περιέχον µέρος (container) ή υποδοχέας είναι µια συλλογή από σχετικά συνθετικά µέρη ή συστατικά. Όπως µια τάξη που κληρονοµεί την τάξη Component είναι ένα συστατικό, έτσι και µια τάξη που κληρονοµεί την τάξη Container είναι ένας υποδοχέας. Εξετάζοντας την ιεραρχία του Πίνακα 18.1, θα διαπιστώσουµε ότι ένα αντικείµενο της τάξης Container (ένας υποδοχέας) είναι ένα αντικείµενο της τάξης Component (ένα συστατικό). Μ άλλα λόγια οι υποδοχείς είναι και αυτοί συστατικά, δηλαδή αντικείµενα της υποτάξης Container της τάξης Component του πακέτου java.awt. Έτσι, οι υποδοχείς όπως κι όλα τα άλλα συστατικά µπορούν να προστεθούν σ έναν άλλο υποδοχέα, δίνοντας µας τη δυνατότητα να δηµιουργήσουµε σύνθετες Γ Χ. Κάθε πρόγραµµα που παρέχει µια Γ Χ τύπου Swing πρέπει να περιέχει έναν τουλάχιστον βασικό (ριζικό, πρώτου επιπέδου) υποδοχέα του Swing, που υποστηρίζει τον τρόπο µε τον οποίο τα συστατικά του υποδοχέα σχεδιάζονται και αντιδρούν σε γεγονότα. Οι τρεις βασικοί υποδοχείς του Swing είναι αντικείµενα των τάξεων: JFrame υλοποιεί πλαίσιο, δηλαδή ένα κύριο παράθυρο JApplet υλοποιεί την περιοχή εµφάνισης µιας µικροεφαρµογής µέσα στο παράθυρο ενός φυλλοµετρητή και JDialog υλοποιεί ένα δευτερεύον παράθυρο, δηλαδή ένα παράθυρο που εξαρτάται από ένα άλλο παράθυρο. Οι υποδοχείς του Swing θεωρούνται ότι αποτελούνται από υαλοπίνακες (panes) 1. Στο βιβλίο αυτό θα ασχοληθούµε µόνο µε τους υποδοχείς JFrame, JPanel (Κεφ. 18.6) και JApplet (Κεφ. 20). Οι υποδοχείς JFrame και JApplet διαθέτουν έναν ειδικό υποδοχέα τον υαλοπίνακα των περιεχοµένων (content pane) τους. Τα συστατικά που περιέχονται στον υαλοπίνακα αυτόν εµφανίζονται αυτόµατα στην οθόνη κατά τη διάρκεια εκτέλεσης του προγράµµατος. Ο υαλοπίνακας περιεχοµένων είναι ένα αντικείµενο της τάξης Container του πακέτου java.awt. Έτσι, στις εφαρµογές που επεκτείνουν τον υποδοχέα JFrame -και στις µικροεφαρµογές (που επεκτείνουν τον υποδοχέα JApplet)-, τα συ- 1 Κάτι που χονδρικά σηµαίνει υποδοχείς µέσα σε υποδοχείς.

6 498 Προγραµµατισµός µε Java στατικά πρέπει να προστίθενται στον υαλοπίνακα περιεχοµένων του υποδοχέα. Αυτός είναι ένα αντικείµενο της τάξης Container. Η τάξη java.awt.container ορίζει όλες τις κοινές ιδιότητες και συµπεριφορές των αντικειµένων όλων των υποτάξεών της. Κληρονοµεί τις µεθόδους setsize και setvisible από την τάξη java.awt.component. Μερικές από τις άλλες µεθόδους της τάξης αυτής είναι: public Component add (Component συστατικό) προσθέτει το συστατικό συστατικό (συστατικό ή υποδοχέα) σ έναν υποδοχέα public void setlayout (διαχειριστής_διάταξης) προσδιορίζει το διαχειριστή διάταξης (layout manager) ο οποίος δίνει κατάλληλες διαστάσεις στα συστατικά µέρη του υποδοχέα και τα τοποθετεί σ ορισµένες θέσεις στην οθόνη, απαλλάσσοντας τον προγραµµατιστή από το να καθορίσει ο ίδιος τις λεπτοµέρειες αυτές. Η παράµετρος διαχειριστής_διάταξης είναι τύπου LayoutManager (βλ. Κεφ. 18.5, παρακάτω). Αν η παράµετρος αυτή είναι ίση µε null, τότε ο διαχειριστής_διάταξης θεωρείται ως απόλυτος (absolute) και ο χρήστης πρέπει να προδιαγράψει τα όρια (bounds) κάθε συστατικού µε τη µέθοδο setbounds που η τάξη java.awt.container κληρονοµεί από την τάξη java.awt.component public void paint (Graphics g) ζωγραφίζει τον υποδοχέα αυτόν. Για παράδειγµα, αν ο χρήστης καλύψει το παράθυρο ενός υποδοχέα στην οθόνη µ ένα άλλο ανοικτό παράθυρο και αργότερα ξεσκεπάσει το παράθυρο του υποδοχέα, τότε καλείται αυτόµατα η µέθοδος paint. Παίρνει ως παράµετρο µια αναφορά της τάξης Graphics του πακέτου java.awt η οποία παριστάνει την περιοχή που πρέπει να ζωγραφιστεί. Τέλος τάξη Container κληρονοµεί τη µέθοδο repaint() της τάξης Component και ακυρώνει τη µέθοδο update (Graphics g), έτσι ώστε αυτή να ενηµερώνει τον υποδοχέα Πλαίσια: Τάξη JFrame Τα προγράµµατα χρησιµοποιούν συχνά ένα αντικείµενο τύπου JFrame για να δηµιουργήσουν εφαρµογές βασισµένες σε Γ Χ. Το αντικείµενο αυτό παρέχει το χώρο µέσα στον οποίο εµφανίζεται η Γ Χ. Η τάξη JFrame παρέχει τις βασικές ιδιότητες και συµπεριφορές ενός παραθύρου, δηλαδή µια µπάρα τίτλου και κου- µπιά για ελαχιστοποίηση, µεγιστοποίηση και κλείσιµο του παραθύρου. Οι κατασκευαστές της τάξης JFrame είναι:

7 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 499 public JFrame () κατασκευάζει ένα νέο πλαίσιο που είναι αρχικά αόρατο και public JFrame (String συµβολοσειρά) κατασκευάζει ένα νέο πλαίσιο που είναι αρχικά αόρατο και έχει ως τίτλο τη συµβολοσειρά. Μερικές από τις µεθόδους της τάξης JFrame είναι: public void settitle (String συµβολοσειρά) θέτει τη συµβολοσειρά σαν τίτλο του πλαισίου public String gettitle () επιστρέφει τον τίτλο του πλαισίου ως µια συµβολοσειρά public Container getcontentpane () επιστρέφει το αντικείµενο υαλοπίνακα των περιεχοµένων του πλαισίου αυτού public void setdefaultcloseoperation (int πράξη) προσδιορίζει την πράξη που εξ ορισµού θα λάβει χώρα όταν ο χρήστης κλείσει το πλαίσιο, δηλαδή πατήσει το κουµπί x που βρίσκεται στην πάνω δεξιά γωνία της ράβδου µενού του πλαισίου. Πιθανές ενέργειες είναι: JFrame.EXIT_ON_CLOSE η εφαρµογή τερµατίζεται καλώντας τη µέθοδο System.exit (η σταθερά αυτή πρέπει να χρησιµοποιείται µόνο για εφαρµογές) WindowConstants.DO_NOTHING_ON_CLOSE δεν κάνει τίποτα. Το γεγονός του κλεισίµατος του πλαισίου πρέπει να το χειριστεί το ίδιο το πρόγραµµα WindowConstants.HIDE_ON_CLOSE το πλαίσιο κρύβεται αυτόµατα, για να εµφανιστεί πιθανώς αργότερα WindowConstants.DISPOSE_ON_CLOSE το πλαίσιο κρύβεται και καταστρέφεται αυτόµατα (µετά από αυτό δεν είναι δυνατόν να ξαναεµφανιστεί). Ένα πλαίσιο κληρονοµεί τις µεθόδους setvisible, setsize, setlocation και repaint από την τάξη java.awt.component, καθώς και τη µέθοδο paint από την τάξη java.awt.container. Η τελευταία πρέπει να ακυρωθεί για να σχεδιάσουµε άµεσα στο παρασκήνιο του πλαισίου. Τέλος ένα πλαίσιο ακυρώνει τη µέθοδο update της τάξης Container, έτσι ώστε η τελευταία α- πλώς να καλεί τη µέθοδο paint(g) που κληρονοµείται από την τάξη Container.

8 500 Προγραµµατισµός µε Java 18.4 Συστατικά του swing: τάξη javax.swing.jcomponent Η αφηρηµένη τάξη JComponent είναι η υπερτάξη των περισσοτέρων συστατικών του πακέτου swing, τα ονόµατα των οποίων αρχίζουν µε το γράµµα 'J'. Στα παρακάτω θα εξετάσουµε µερικά από τα βασικά συστατικά που παρέχει η τάξη JComponent του πακέτου javax.swing. Οι υποτάξεις της τάξης JComponent υποστηρίζουν διαφάνεια (transparency). Μερικές από τις µεθόδους της τάξης JComponent είναι: public boolean setopaque (boolean b) καθιστά το συστατικό αδιαφανές, αν η παράµετρος b είναι true, και διαφανές, αν είναι false public void settooltiptext (String κείµενο) προσδιορίζει το κείµενο που θα εµφανιστεί, όταν ο δείκτης του ποντικιού παρα- µείνει για λίγο χρόνο πάνω στο συστατικό αυτό Ετικέτες: Τάξη JLabel Μια ετικέτα (label) είναι µια περιοχή στην οποία µπορεί να εµφανιστεί ένα σύντοµο κείµενο, µια εικόνα ή και τα δύο. Αρκετές φορές τοποθετείται δίπλα σε κάποιο άλλο συστατικό Γ Χ και περιέχει µια συµβολοσειρά ή και µια εικόνα που χρησιµοποιείται για να υποδεικνύει το σκοπό του τελευταίου. Κάθε ετικέτα έχει µια περιοχή εµφάνισης. Μερικοί από τους κατασκευαστές της τάξης JLabel είναι: public JLabel () δηµιουργεί µια νέα κενή δεν περιέχει ούτε κείµενο ούτε εικόνα ετικέτα που είναι κατακόρυφα κεντραρισµένη µέσα στην περιοχή εµφάνισής της. Μετά τη δηµιουργία της, µπορεί να τοποθετηθεί µία εικόνα (µε τη µέθοδο seticon, βλ. παρακάτω) ή/και κείµενο στην ετικέτα αυτή (µε την εντολή settext, βλ. παρακάτω). Η στοίχιση των (µελλοντικών) περιεχοµένων της (θα) είναι αριστερή. public JLabel (String συµβολοσειρά) δηµιουργεί µια νέα ετικέτα που περιέχει τη συµβολοσειρά. Η ετικέτα είναι στοιχισµένη ως προς την αρχική (leading) άκρη της περιοχής εµφάνισής της και κεντραρισµένη κατακόρυφα µέσα σε αυτήν public JLabel (String συµβολοσειρά, int οριζόντια_στοίχιση)

9 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 501 δηµιουργεί µια νέα ετικέτα που περιέχει τη συµβολοσειρά. Η ετικέτα είναι κεντραρισµένη κατακόρυφα στην περιοχή εµφάνισής της. Η παράµετρος οριζόντια_στοίχιση είναι τύπου int και µπορεί να πάρει ως τιµή µια από τις παρακάτω σταθερές που είναι ορισµένες στη διεπαφή SwingConstants (που υλοποιεί η τάξη JLabel): Σταθερά Στοίχιση SwingConstants.LEFT προς τ αριστερά SwingConstants.CENTER στο κέντρο SwingConstants.RIGHT προς τα δεξιά SwingConstants.LEADING στην αρχή της περιοχής 2 SwingConstants.TRAILING στο τέλος της περιοχής. public JLabel (Icon εικόνα) δηµιουργεί µια ετικέτα που περιέχει την εικόνα. Η ετικέτα αυτή είναι κατακόρυφα και οριζόντια κεντραρισµένη στην περιοχή εµφάνισής της public JLabel (Icon εικόνα, int οριζόντια_στοίχιση) δηµιουργεί µια ετικέτα µε την εικόνα εικόνα. Η παράµετρος οριζόντια_- στοίχιση καθορίζει την οριζόντια στοίχιση της ετικέτας µέσα στην περιοχή εµφάνισής της και µπορεί να πάρει µια από τις τιµές που προσδιορίστηκαν παραπάνω. Η ετικέτα είναι κατακόρυφα κεντραρισµένη µέσα στην περιοχή εµφάνισής της public JLabel (String συµβολοσειρά, Icon εικόνα, int οριζόντια_στοίχιση) δηµιουργεί µια ετικέτα µε τη συµβολοσειρά, την εικόνα και την οριζόντια_στοίχιση που περνιούνται ως παράµετροι. Η ετικέτα είναι κατακόρυφα κεντραρισµένη µέσα στην περιοχή εµφάνισής της. Το κείµενο είναι στην τελική (trailing) άκρη της εικόνας. Μερικές από τις µεθόδους της τάξης JLabel είναι: public void sethorizontalalignment (int οριζόντια_στοίχιση) θέτει τη στοίχιση του τίτλου της ετικέτας κατά µήκος του άξονα των x, όπου ο- ριζόντια_στοίχιση είναι µια από τις παραπάνω τιµές 2 Με χρήση των σταθερών LEADING και TRAILING η διάταξη των συστατικών του Swing µπορεί να κάνει χρήση ενός αντικειµένου που ονοµάζεται ComponentOrientation (προσανατολισµός συστατικού). Όταν ένα τέτοιο αντικείµενο προσαρτάται σ ένα συστατικό του Swing, τότε η σταθερά LEADING σηµαίνει αριστερά σ ένα αριστερά προς τα δεξιά περιβάλλον (π.χ. ελληνική γλώσσα) και δεξιά σ ένα δεξιά προς αριστερά περιβάλλον (π.χ. αραβική γλώσσα). Το αντίθετο υπονοείται µε τη σταθερά TRAILING.

10 502 Προγραµµατισµός µε Java public int gethorizontalalignment () επιστρέφει τη στοίχιση του τίτλου της ετικέτας κατά µήκος του άξονα των x, ως µια τιµή από τις παραπάνω public void setverticalalignment (int κατακόρυφη_στοίχιση) θέτει τη στοίχιση του τίτλου της ετικέτας κατά µήκος του άξονα των y. Η παράµετρος κατακόρυφη_στοίχιση µπορεί να πάρει µια από τις παρακάτω τιµές: SwingConstants.TOP στοίχιση στην κορυφή SwingConstants.CENTER SwingConstants.BOTTOM στοίχιση στο κέντρο στοίχιση στη βάση public int getverticalalignment () επιστρέφει τη στοίχιση του τίτλου της ετικέτας κατά µήκος του άξονα των y, ως µια τιµή από τις παραπάνω public void sethorizontaltextposition (int οριζόντια_στοίχιση) µε βάση την τιµή της παραµέτρου οριζόντια_στοίχιση η οποία µπορεί να είναι µια από αυτές που αναφέρθηκαν και παραπάνω, καθορίζει την οριζόντια θέση του κειµένου της ετικέτας σχετικά µε τη θέση της εικόνας της public int gethorizontaltextposition () επιστρέφει τη σχετική µε τη θέση της εικόνας οριζόντια θέση του κειµένου της ετικέτας public void setverticaltextposition (int κατακόρυφη_στοίχιση) καθορίζει την κατακόρυφη θέση του κειµένου της ετικέτας σε σχέση µε τη θέση της εικόνας της. Η παράµετρος κατακόρυφη_στοίχιση µπορεί να πάρει µια από της τιµές που προσδιορίστηκαν παραπάνω public int getverticaltextposition () επιστρέφει τη σχετική µε τη θέση της εικόνας θέση του κειµένου της ετικέτας κατά τον κατακόρυφο άξονα public void settext (String συµβολοσειρά) τοποθετεί τη συµβολοσειρά µέσα στη ετικέτα public String gettext () επιστρέφει τη συµβολοσειρά που περιέχει η ετικέτα

11 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 503 public void seticon (Icon εικόνα) τοποθετεί την εικόνα µέσα στην ετικέτα public Icon geticon () επιστρέφει την εικόνα που περιέχει η ετικέτα public void setlabelfor (Component συστατικό) θέτει την ετικέτα στο συστατικό. Η παράµετρος συστατικό µπορεί να είναι null, αν η συγκεκριµένη ετικέτα δεν αντιστοιχεί σε κάποιο συστατικό public Component getlabelfor () επιστρέφει το συστατικό στο οποίο αντιστοιχεί η ετικέτα αυτή. Η τιµή που επιστρέφει µπορεί να είναι null, αν η ετικέτα αυτή δεν αντιστοιχεί σε συστατικό. Παράδειγµα 18.1 // κάνει µια επίδειξη της χρήσης συστατικών τύπου JLabel import java.awt.*; import javax.swing.*; public class LabelTestApp extends JFrame { private JLabel label1, label2, label3, label4; private Icon goofy = new ImageIcon ("C:\\goofy.gif"); // στήσε τη Γ Χ public LabelTestApp() { super("πολλές Ετικέτες... "); // πάρε τον υαλοπίνακα των περιεχοµένων του πλαισίου Container c = getcontentpane(); c.setlayout (null); c.setbackground (Color.white); // (βλ. τάξη Color στο Κεφ.18.8, παρακάτω) // κατασκευαστής µε παράµετρο κείµενο label1 = new JLabel("Ετικέτα µε κείµενο"); label1.setbounds (30, 70, 200, 40); label1.setfont (new Font ("Courier new", Font.BOLD, 16)); label1.setbackground (Color.red.brighter()); label1.setforeground (Color.blue); label1.setopaque (true); c.add (label1);

12 504 Προγραµµατισµός µε Java // κατασκευαστής µε παραµέτρους εικόνα και στοίχιση label2 = new JLabel (goofy, SwingConstants.CENTER); label2.setbounds (250, 20, 200, 140); label2.setbackground (Color.cyan.darker()); label2.setopaque (true); c.add (label2); // κατασκευαστής µε παραµέτρους κείµενο, εικόνα // και στοίχιση label3 = new JLabel("Ετικέτα µε κείµενο και " + "εικόνα", goofy, SwingConstants.LEFT); label3.setbounds (10, 180, 350, 140); label3.setbackground (Color.orange); label3.setopaque (true); c.add (label3); // κατασκευαστής χωρίς παραµέτρους label4 = new JLabel(); // πρόσθεσε κείµενο στην ετικέτα label4.settext ("Ετικέτα µε εικόνα και κείµενο στο" + " κάτω µέρος της"); // πρόσθεσε εικόνα στην ετικέτα label4.seticon (goofy); label4.sethorizontaltextposition (SwingConstants.CENTER); label4.sethorizontalalignment (SwingConstants.CENTER); label4.setverticaltextposition (SwingConstants.BOTTOM); label4.setbackground (Color.green.darker()); label4.setbounds (60, 340, 350, 150); label4.setopaque (true); c.add (label4); setsize (470, 540); // εννοείται this., γιατί οι setvisible (true); // εντολές αυτές βρίσκονται µέσα // στη µέθοδο-κατασκευαστή του πλαισίου } // LabelTestApp // εκτέλεσε την εφαρµογή public static void main(string args[]) { LabelTestApp application = new LabelTestApp(); application.setdefaultcloseoperation (EXIT_ON_CLOSE);

13 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 505 } // main } // LabelTestApp Σηµείωση Το αποτέλεσµα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής (βλ. Εικόνα 1), καθώς και όλων των υπόλοιπων εφαρµογών και µικροεφαρµογών των Κεφαλαίων 18, 19, και 20 παρουσιάζονται στο έγχρωµο ένθετο που βρίσκεται στο τέλος του βιβλίου Πεδία κειµένου: Τάξη JΤextField Ένα πεδίο κειµένου (text field) είναι ένα συστατικό Γ Χ που χρησιµοποιείται είτε για την εισαγωγή µιας γραµµής κειµένου που πληκτρολογεί ο χρήστης είτε για να εµφανίσει µια γραµµή κειµένου ως έξοδο του προγράµµατος. Η γραµµή κειµένου πληκτρολογείται ή εµφανίζεται µέσα σ ένα ορθογώνιο. Όταν ο χρήστης πιέσει το πλήκτρο Enter (για να στείλει τη συµβολοσειρά που πληκτρολόγησε στο πρόγραµµα), συµβαίνει ένα γεγονός ενεργείας (action event). Αν το πρόγραµµα διαθέτει έναν ακροατή_ενέργειας συνδεδεµένο µε το πεδίο κειµένου, τότε αυτός µπορεί να αντιµετωπίσει το εν λόγω γεγονός. Μερικοί από τους κατασκευαστές της τάξης JTextField είναι οι παρακάτω: public JTextField () δηµιουργεί ένα νέο πεδίο κειµένου που είναι κενό, δηλαδή έχει 0 στήλες και περιέχει την κενή συµβολοσειρά public JTextField (String συµβολοσειρά) δηµιουργεί ένα νέο πεδίο κειµένου και τοποθετεί τη συµβολοσειρά σε αυτό. Ο αριθµός των στηλών του πεδίου τίθεται στο 0 public JTextField (int αριθµός_στηλών) δηµιουργεί ένα νέο κενό πεδίο κειµένου µε αριθµός_στηλών στήλες. public JTextField (String συµβολοσειρά, int αριθµός_στηλών) δηµιουργεί ένα νέο πεδίο κειµένου που περιέχει τη συµβολοσειρά και έχει αριθ- µός_στηλών στήλες. Μερικές από τις µεθόδους της τάξης JTextField είναι: public String gettext () επιστρέφει το κείµενο που βρίσκεται µέσα στο πεδίο κειµένου ως µια συµβολοσειρά

14 506 Προγραµµατισµός µε Java public void settext (String συµβολοσειρά) θέτει (εµφανίζει) τη συµβολοσειρά στο πεδίο κειµένου. Αν η συµβολοσειρά είναι κενή τότε διαγράφεται το κείµενο που υπήρχε µέσα στο πεδίο κειµένου public void seteditable (boolean b) αν η παράµετρος b είναι ίση µε false, ο χρήστης δεν µπορεί να τροποποιήσει τα περιεχόµενα του αντικειµένου τύπου JTextField. Αντίθετα, αν η b είναι true, τότε ο χρήστης µπορεί να πληκτρολογήσει µέσα στο πεδίο κειµένου public boolean iseditable () επιστρέφει true ή false, ανάλογα µε το αν τα περιεχόµενα του πεδίου κειµένου είναι τροποποιήσιµα public void addactionlistener (ActionListener ακροατής_ενέργειας) προσθέτει τον ακροατή_ενέργειας (βλ. Κεφ ) στο πεδίο κειµένου Περιοχές κειµένου: Τάξη JΤextArea Μια περιοχή κειµένου (text area) είναι παρόµοια µε ένα πεδίο κειµένου, αλλά επιτρέπει την εµφάνιση ή την εισαγωγή πολλών γραµµών κειµένου σ αυτή. Μερικοί από τους κατασκευαστές της είναι: public JΤextArea () δηµιουργεί µια νέα περιοχή κειµένου που είναι κενή, δηλαδή έχει 0 γραµµές, 0 στήλες και περιέχει την κενή συµβολοσειρά public JΤextArea (String συµβολοσειρά) δηµιουργεί µια νέα περιοχή κειµένου που περιέχει τη συµβολοσειρά. Το πλήθος των στηλών και γραµµών της περιοχής τίθεται στο 0 public JΤextArea (int αριθµός_γραµµών, int αριθµός_στηλών) δηµιουργεί µια νέα κενή περιοχή κειµένου, οι διαστάσεις της οποίας καθορίζονται από τους ακεραίους αριθµός_γραµµών και αριθµός_στηλών. Η τάξη JTextArea διαθέτει τις ίδιες µεθόδους -gettext, settext, seteditable και iseditable- µε την τάξη JTextField, γιατί οι δύο αυτές τάξεις είναι υποτάξεις της αφηρηµένης τάξης JTextComponent και κληρονοµούν τις µεθόδους που αναφέραµε στο Κεφάλαιο από αυτήν. Τέλος η τάξη JTextArea διαθέτει επίσης τη µέθοδο:

15 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 507 public void append (String συµβολοσειρά) προσθέτει (επισυνάπτει) τη συµβολοσειρά στο τέλος ενός αντικειµένου τύπου JTextArea. Παράδειγµα 18.2 // δηµιουργεί µια εφαρµογή για την εισαγωγή των στοιχείων // (ονοµατεπώνυµο, διεύθυνση, τηλέφωνο) του χρήστη import java.awt.*; import javax.swing.*; public class Forma extends JFrame { JLabel namelabel = new JLabel ("Ονοµατεπώνυµο: "); JLabel addresslabel = new JLabel (" ιεύθυνση: "); JLabel telephonelabel = new JLabel ("Τηλέφωνο: "); JTextField namefield = new JTextField (); JTextArea addressarea = new JTextArea (); JTextField telephonefield = new JTextField (); public Forma() { super("εισαγωγή Στοιχείων"); Container ypodoxeas; ypodoxeas = getcontentpane (); ypodoxeas.setlayout (null); ypodoxeas.setbackground (new Color (38, 175, 249)); namelabel.setbounds (60, 30, 100, 20); ypodoxeas.add (namelabel); namefield.setbounds (180, 30, 200, 20); ypodoxeas.add (namefield); addresslabel.setbounds (60, 110, 100, 20); ypodoxeas.add (addresslabel); addressarea.setbounds (180, 100, 130, 40); ypodoxeas.add (addressarea); telephonelabel.setbounds (60, 200, 100, 20); ypodoxeas.add (telephonelabel); telephonefield.setbounds (180, 200, 100, 20); ypodoxeas.add (telephonefield); setsize (450, 300); // εννοείται this.setsize και setvisible (true); // this.setvisible, γιατί οι // εντολές αυτές βρίσκονται µέσα στον κατασκευαστή } // Forma public static void main (String[] args) { Forma input = new Forma();

16 508 Προγραµµατισµός µε Java input.setdefaultcloseoperation (EXIT_ON_CLOSE); } // main } // Forma Το αποτέλεσµα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής παρουσιάζεται στην Εικόνα 2 του ένθετου του βιβλίου Κουµπιά: Τάξη JButton Ένα κουµπί (button) είναι µια ορθογώνια περιοχή που περιέχει έναν τίτλο και που µε το πάτηµά της (δηλαδή όταν ο χρήστης τοποθετήσει το δροµέα του ποντικιού πάνω στην περιοχή αυτή και πατήσει το αριστερό πλήκτρο του ποντικιού) δηµιουργείται ένα γεγονός (βλ. Κεφ. 19.1). Μερικοί από τους κατασκευαστές της τάξης JButton, όπως οι παρακάτω, είναι παρόµοιοι µε αυτούς της τάξης JLabel: public JButton () δηµιουργεί ένα νέο κουµπί χωρίς τίτλο και χωρίς εικόνα public JButton (String συµβολοσειρά) δηµιουργεί ένα νέο κουµπί που έχει ως τίτλο του τη συµβολοσειρά. public JButton (Icon εικόνα) δηµιουργεί ένα κουµπί που περιέχει την εικόνα public JButton (String συµβολοσειρά, Icon εικόνα) δηµιουργεί ένα νέο κουµπί που περιέχει τη συµβολοσειρά και την εικόνα. Παρόλο που έχουµε τη δυνατότητα να πατήσουµε τα κουµπιά που δηµιουργούµε µε τους παραπάνω κατασκευαστές, η ενέργειά µας αυτή δεν έχει κανένα αποτέλεσµα. Για να έχει αποτέλεσµα η ενέργειά µας θα πρέπει να χρησιµοποιήσουµε τη µέθοδο: public void addactionlistener (ActionListener ακροατής_ενέργειας) που προσθέτει τον ακροατή_ενέργειας στο κουµπί (βλ. Κεφ ). Ουσιαστικά ο ακροατής_ενέργειας αφουγκράζεται τα διάφορα γεγονότα που δηµιουργούνται από το κουµπί αυτό και δροµολογεί την αντιµετώπισή τους. Μερικές από τις άλλες µεθόδους που παρέχει η τάξη JButton είναι οι εξής: public void settext (String συµβολοσειρά) τοποθετεί τη συµβολοσειρά στο κουµπί

17 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 509 public String gettext () επιστρέφει το κείµενο που περιέχεται στο το κουµπί public void seticon (Icon εικόνα) τοποθετεί την εικόνα στο κουµπί public Icon geticon () επιστρέφει την εικόνα του κουµπιού ιαχειριστές ιάταξης Η Java παρέχει διαχειριστές που µας βοηθούν να οργανώσουµε τη διάταξη των συστατικών µιας Γ Χ σ έναν υποδοχέα, για λόγους εµφάνισης στην οθόνη. Ένας διαχειριστής διάταξης (layout manager) µας δίνει τη δυνατότητα να τοποθετήσουµε εύκολα τα συστατικά µιας Γ Χ σ έναν υποδοχέα, χωρίς να ασχολούµαστε µε τις λεπτοµέρειες της θέσης και του µεγέθους του κάθε συστατικού. Αυτό µας δίνει τη δυνατότητα να συγκεντρωθούµε στη βασική εµφάνιση και αίσθηση (look and feel) αγνοώντας τις περισσότερες βαρετές λεπτοµέρειες. Επιπλέον, η χρήση ενός διαχειριστή διάταξης δίνει την ίδια εµφάνιση και αίσθηση σε διάφορα προγραµµατιστικά περιβάλλοντα, πράγµα που δεν επιτυγχάνεται πάντα, όταν χρησιµοποιούµε απόλυτες συντεταγµένες. Οι διαχειριστές διάταξης της Java, που περιγράφονται παρακάτω 3, (κληρονο- µούν την τάξη Object και) υλοποιούν τη διεπαφή η οποία ορίζει τις µεθόδους που χρησιµοποιεί ένας διαχειριστής διάταξης για να καθορίσει τη θέση και το µέγεθος των συστατικών µιας Γ Χ µέσα σ ένα υποδοχέα. Σε κάθε χρονική στιγµή ένας υποδοχέας µπορεί να έχει ένα µόνο διαχειριστή διάταξης. ιαφορετικοί υποδοχείς στο ίδιο πρόγραµµα µπορεί να χρησιµοποιούν διαφορετικούς διαχειριστές διάταξης, που προσδιορίζονται µε κλήση της µεθόδου της τάξης Container: setlayout (διαχειριστής_διάταξης) προσδιορίζει τη διάταξη των συστατικών ενός υποδοχέα. και layout.layoutcontainer (container); στοιχίζει ξανά τα συστατικά που έχουν προστεθεί στον υποδοχέα container. 3 Η Java παρέχει κι άλλους διαχειριστές διάταξης, όπως τους BoxLayout, CardLayout και GridBagLayout που δεν περιγράφονται στο βιβλίο αυτό.

18 510 Προγραµµατισµός µε Java FlowLayout Είναι ο απλούστερος διαχειριστής διάταξης της Java. Τοποθετεί τα συστατικά µιας Γ Χ σ έναν υποδοχέα από αριστερά προς τα δεξιά µε τη σειρά που αυτά προστίθενται σε αυτόν. Όταν φθάσει στο δεξί όριο του υποδοχέα, συνεχίζει να προσθέτει συστατικά από την επόµενη σειρά του. Είναι ο εξ ορισµού διαχειριστής διάταξης για τον υποδοχέα JPanel. Η τάξη FlowLayout επιτρέπει στα συστατικά µιας Γ Χ να είναι στοιχισµένα προς τα αριστερά, στο κέντρο ή προς τα δεξιά παρέχοντας τη µέθοδο κατασκευαστή: public FlowLayout (int στοίχιση) Η παράµετρος στοίχιση της οποίας µπορεί να έχει ως τιµή µια από τις παρακάτω σταθερές: Σταθερά Στοίχιση FlowLayout.LEFT αριστερά FlowLayout.CENTER κέντρο FlowLayout.RIGHT δεξιά Με τη µέθοδο: public void setalignment (int στοίχιση) παρέχει τη δυνατότητα καθορισµού της στοίχισης εκ των υστέρων. Και πάλι η παράµετρος στοίχιση µπορεί να έχει µια από τις παραπάνω τιµές. Αν δεν προσδιοριστεί η διάταξη των συστατικών µε κάποια από τις παραπάνω µεθόδους, τότε αυτή εξ ορισµού θεωρείται ως κεντρική. Παράδειγµα 18.3 // χρήση του διαχειριστή διάταξης FlowLayout import java.awt.*; import javax.swing.*; public class FlowCalculator extends JFrame { // ένας πίνακας κουµπιών private JButton buttons[] = new JButton [10]; public FlowCalculator () { super("υπολογιστής"); Container c = getcontentpane (); c.setlayout (new FlowLayout()); // δηµιουργεί κάθε ένα από τα 10 κουµπιά και το

19 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 511 // προσθέτει στον υαλοπίνακα των περιεχοµένων του // πλαισίου for (int i = 0; i < 10; i++) { buttons[i] = new JButton (""+i); c.add (buttons[i]); } setsize (300, 170); setvisible (true); } // FlowCalculator public static void main (String args[]) { FlowCalculator calc = new FlowCalculator (); calc.setdefaultcloseoperation (EXIT_ON_CLOSE); } // main } // FlowCalculator Το αποτέλεσµα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής παρουσιάζεται στην Εικόνα 3 του ένθετου του βιβλίου GridLayout Ο διαχειριστής διάταξης GridLayout διαιρεί έναν υποδοχέα σε πλαίσια, έτσι ώστε τα συστατικά που προστίθενται σ αυτόν να µπορούν να τοποθετηθούν οριζόντια σε γραµµές και κατακόρυφα σε στήλες. Όλα τα συστατικό που τοποθετούνται σε έναν υποδοχέα µε διαχειριστή διάταξης τύπου GridLayout έχουν το ίδιο πλάτος και ύ- ψος. Τα συστατικά προστίθενται αρχίζοντας από το πάνω αριστερά κελί του πλαισίου και συνεχίζουν αριστερά προς τα δεξιά µέχρι να γεµίσει η πρώτη γραµµή. Η διαδικασία αυτή συνεχίζεται για τη δεύτερη γραµµή κ.ο.κ. Η µέθοδος κατασκευαστής: public GridLayout (int γραµµές, int στήλες) δηµιουργεί ένα διαχειριστή GridLayout µε γραµµές γραµµές και στήλες στήλες. Μια µόνο το πολύ από τις παραµέτρους στήλες και γραµµές µπορεί να είναι 0, υπονοώντας ότι οσαδήποτε αντικείµενα µπορούν να τοποθετηθούν κατά µήκος µιας στήλης ή µιας γραµµής αντίστοιχα. Η µέθοδος κατασκευαστής: public GridLayout (int γραµµές, int στήλες, int x, int y) δηµιουργεί ένα διαχειριστή GridLayout µε γραµµές γραµµές, στήλες στήλες, x pixels (εικονοστοιχεία 4 ) οριζόντιο κενό χώρο µεταξύ των γραµµών και y 4 Βλ. Κάβουρα, Ι. Κ. Οργάνωση Συστηµάτων Υπολογιστών (Συστήµατα Υπολογιστών Τόµος Ι), εκδ. Κλειδάριθµος, Έκδοση 6 η, Αθήνα 2003, Κεφ

20 512 Προγραµµατισµός µε Java pixels κατακόρυφο κενό χώρο µεταξύ των στηλών. Και εδώ ισχύει ο περιορισµός σχετικά µε τις µηδενικές τιµές των παραµέτρων γραµµές και στήλες. Παράδειγµα 18.4 // χρήση του διαχειριστή διάταξης GridLayout import java.awt.*; import javax.swing.*; public class GridCalculator extends JFrame { // πίνακας κουµπιών private JButton buttons[] = new JButton [10]; public GridCalculator () { super("υπολογιστής"); Container c = getcontentpane (); c.setlayout (new GridLayout(4, 3)); // δηµιουργία και προσθήκη κουµπιών for (int i = 0; i < 10; i++) { buttons[i] = new JButton (""+i); c.add (buttons[i]); } setsize(300, 170); setvisible(true); } // GridCalculator public static void main (String args[]) { GridCalculator calc = new GridCalculator (); calc.setdefaultcloseoperation (EXIT_ON_CLOSE); } // main } // GridCalculator Το αποτέλεσµα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής παρουσιάζεται στην Εικόνα 4 του ένθετου του βιβλίου BorderLayout Ο διαχειριστής BorderLayout τοποθετεί τα συστατικά µέσα σε πέντε περιοχές: NORTH (βορράς), SOUTH (νότος), EAST (ανατολή), WEST (δύση) και CEN- TER (κέντρο), όπου NORTH αντιστοιχεί στην κορυφή του υποδοχέα. Μπορούν να προστεθούν άµεσα µέχρι πέντε συστατικά, ένα για την κάθε περιοχή. Τα συστα-

21 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 513 τικά που τοποθετούνται στις περιοχές NORTH και SOUTH επεκτείνονται οριζοντίως µέχρις τις πλευρές του υποδοχέα. Το ύψος των περιοχών αυτών είναι τόσο όσο και το ύψος των συστατικών που περιέχουν. Οι περιοχές EAST και WEST επεκτείνονται κατακόρυφα και έχουν πλάτος ίσο µε το πλάτος των συστατικών που τοποθετούνται σ αυτές. Το συστατικό που τοποθετείται στην περιοχή CENTER επεκτείνεται έτσι ώστε να γεµίσει όλο τον υπόλοιπο χώρο του υποδοχέα. Το συστατικό που τοποθετείται στην κάθε περιοχή µπορεί να είναι ένας υποδοχέας µέσα στον οποίο µπορούν να προστεθούν άλλα συστατικά. Αν και οι πέντε περιοχές είναι κατειληµµένες, τότε όλος ο χώρος του υποδοχέα καλύπτεται από συστατικά της Γ Χ. Αν οι περιοχές NORTH ή SOUTH δεν είναι κατειληµµένες, τα συστατικά στις περιοχές EAST, CENTER και WEST επεκτείνονται κατακόρυφα έτσι ώστε να γεµίσουν το χώρο που αποµένει. Αν οι περιοχές EAST ή WEST δεν είναι κατειληµµένες, το συστατικό στην περιοχή CENTER επεκτείνεται οριζόντια έτσι ώστε να γεµίσει το χώρο που αποµένει. Τέλος, αν η περιοχή CENTER δεν είναι κατειληµµένη, τότε αυτή παραµένει κενή (τα υπόλοιπα συστατικά δεν επεκτείνονται για να γεµίσουν το χώρο που αποµένει). Ο διαχειριστής BorderLayout είναι ο εξ ορισµού διαχειριστής του υαλοπίνακα περιεχοµένων των υποδοχέων τύπου JFrame και JApplet. Η εντολή: BorderLayout layout = new BorderLayout (x, y); προσδιορίζει το πλήθος x των εικονοστοιχείων που καταλαµβάνει ο χώρος µεταξύ των συστατικών που τοποθετούνται οριζοντίως (horizontal gap space) και το πλήθος y των εικονοστοιχείων που καταλαµβάνει ο χώρος µεταξύ των συστατικών που τοποθετούνται κατακόρυφα (vertical gap space), αντίστοιχα. Ο εξορισµού κατασκευαστής της τάξης BorderLayout δίνει χώρους πλάτους 0 εικονοστοιχείων µεταξύ των συστατικών. Η πρoσθήκη ενός συστατικού σ έναν υποδοχέα container στον οποίο έ- χουµε θέσει ως διαχειριστή διάταξης ένα αντικείµενο τύπου BorderLayout επιτυγχάνεται µε την εντολή: container.add (συστατικό, περιοχή); όπου περιοχή είναι µια από τις σταθερές BorderLayout.NORTH, Border_Layout.SOUTH, BorderLayout.EAST, BorderLayout.- WEST ή BorderLayout.CENTER. Αν δεν προσδιοριστεί η περιοχή στην παραπάνω µέθοδο, τότε το συστατικό τοποθετείται στην περιοχή BorderLayout.CENTER. Η προσθήκη περισσοτέ-

22 514 Προγραµµατισµός µε Java ρων από ένα συστατικών σε µια ορισµένη περιοχή έχει ως αποτέλεσµα να εµφανίζεται µόνο το τελευταίο συστατικό που έχει προστεθεί Πανό: Τάξη JPanel Σύνθετες Γ Χ απαιτούν να τοποθετούµε κάθε συστατικό σε µια ακριβή θέση ενός υποδοχέα. Οι διαπαφές αυτές αποτελούνται συχνά από πολλά πανό τα συστατικά κάθε ενός των οποίων είναι τοποθετηµένα σε µια ορισµένη διάταξη. Ένα πανό {panel) είναι ένας υποδοχέας µέσα στον οποίο µπορούν να προστεθούν συστατικά µιας Γ Χ. Τα πανό δηµιουργούνται από την τάξη JPanel µια υποτάξη της τάξης JComponent. Η τάξη JComponent κληρονοµεί την τάξη java.awt.container δηλαδή κάθε αντικείµενο τύπου JPanel είναι ένας υποδοχέας. Ένα αντικείµενο τύπου JPanel µπορεί να περιέχει οποιοδήποτε συστατικό Γ Χ. Έτσι µπορούµε να προσθέσουµε συστατικά, συµπεριλαµβανοµένων και άλλων πανό µέσα σ ένα αντικείµενο τύπου JPanel. Ο υποδοχέας JPanel µια ειδική περιοχή µέσα στην οποία µπορούν να σχεδιαστούν είτε γραφικά είτε συστατικά του Swing. Τα πανό είναι πολύ χρήσιµα όταν θέλουµε να εµφανίσουµε σωστά ταυτόχρονα γραφικά και συστατικά του Swing. Αρκεί να ετοιµάσουµε διαφορετικά πανό για το καθένα και να τα προσθέσουµε σε κάποιον άλλο υποδοχέα. Τα αντικείµενα τύπου JPanel είναι εξ ορισµού αδιαφανή. Η εντολή: JPanel panel = new JPanel(); δηµιουργεί ένα νέο πανό. Σε αντίθεση µε τους υποδοχείς JFrame και JApplet, τα πανό δε διαθέτουν υαλοπίνακα περιεχοµένων. Έτσι, η προσθήκη ενός συστατικού σ ένα πανό επιτυγχάνεται απλά µε την εντολή: panel.add (συστατικό); Όπως ήδη αναφέραµε, η µέθοδος add της τάξης Container προσθέτει ένα αντικείµενο της τάξης Component ή κάποιας υποτάξης της σ ένα αντικείµενο τύπου Container. Έτσι ένα αντικείµενο τύπου JPanel µπορεί να προστεθεί σ οποιοδήποτε αντικείµενο µιας υποτάξης της Component, και οποιοδήποτε αντικείµενο µιας υποτάξης της Component µπορεί να προστεθεί σ ένα αντικείµενο τύπου JPanel Όπως θα δούµε στο επόµενο κεφάλαιο, τα πανό είναι πολύ ευέλικτα. Τα προγράµµατα συχνά δηµιουργούν υποτάξεις της τάξης JPanel για τη δηµιουργία συγκεκριµένων περιοχών σχεδίασης και η δηµιουργία περιοχών που δέχονται γεγονότα του ποντικιού.

23 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 515 Παράδειγµα 18.5 // επίδειξη χρήσης πανό import java.awt.*; import javax.swing.*; public class PanelApp extends JFrame { private JPanel buttonpanel; private JButton[] buttons; // στήσε τη Γ Χ public PanelApp() { super("επίδειξη ενός πανό"); // πάρε τον υαλοπίνακα των περιεχοµένων του // πλαισίου Container framecontainer = getcontentpane(); // δηµιούργησε έναν πίνακα πέντε κουµπιών buttons = new JButton[5]; // στήσε το πανό και καθόρισε τη διάταξή του buttonpanel = new JPanel(); buttonpanel.setlayout(new GridLayout(1, buttons.length)); // δηµιούργησε και πρόσθεσε τα κουµπιά στο πανό for (int i = 0; i < buttons.length; i++) { buttons[i] = new JButton("Button " + i); buttonpanel.add(buttons[i]); } // πρόσθεσε το πανό στον υαλοπίνακα των // περιεχοµένων του πλαισίου (ο εξ ορισµού // διαχειριστής του υαλοπίνακα περιεχοµένων των // υποδοχέων τύπου JFrame είναι BorderLayout) framecontainer.add (buttonpanel, BorderLayout.SOUTH); // εµφάνισε το πλαίσιο setsize(425, 150); setvisible(true); } // PanelApp // εκτέλεσε την εφαρµογή public static void main (String[] args)

24 516 Προγραµµατισµός µε Java { PanelApp appl = new PanelApp(); appl.setdefaultcloseoperation(jframe.exit_on_close); } // main } // PanelApp Το αποτέλεσµα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής παρουσιάζεται στην Εικόνα 5 του ένθετου του βιβλίου. Παράδειγµα 18.6 // χρήση πανό και του διαχειριστή διάταξης BorderLayout import java.awt.*; import javax.swing.*; public class BorderCalculator extends JFrame { // ένας πίνακας κουµπιών private JButton buttons[] = new JButton [10]; // ένας πίνακας πανό private JPanel panels []= new JPanel [5]; public BorderCalculator () { super("υπολογιστής"); Container c = getcontentpane (); c.setlayout (new BorderLayout ()); // δηµιούργησε τα πανό for (int i = 0; i < 5; i++) panels[i] = new JPanel (); // δηµιούργησε τα κουµπιά for (int i = 0; i < 10; i++) buttons[i] = new JButton (""+i); // πρόσθεσε δύο κουµπιά σε κάθε πανό for (int i = 0; i < 5; i++) { panels[i].add (buttons[2*i]); panels[i].add (buttons[2*i+1]); } // τοποθέτησε τα πανό στα κατάλληλα σηµεία c.add (panels[0], BorderLayout.NORTH); c.add (panels[1], BorderLayout.WEST); c.add (panels[2], BorderLayout.CENTER); c.add (panels[3], BorderLayout.EAST); c.add (panels[4], BorderLayout.SOUTH);

25 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 517 setsize (300, 170); setvisible (true); } // BorderCalculator public static void main (String args[]) { BorderCalculator calc = new BorderCalculator (); calc.setdefaultcloseoperation (EXIT_ON_CLOSE); } // main } // BorderCalculator Τα αποτελέσµατα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής παρουσιάζονται στην Εικόνα 6 του ένθετου του βιβλίου Η τάξη Graphics Η τάξη Graphics µας επιτρέπει να σχεδιάζουµε σχήµατα κ.ά. σε διάφορες συσκευές εµφάνισης εικόνων. Για λόγους φορητότητας η τάξη αυτή είναι µια αφηρηµένη τάξη, διότι ο σχεδιασµός των σχηµάτων επιτυγχάνεται µε διαφορετικό τρόπο σε κάθε πλατφόρµα που υποστηρίζει τη Java. Έτσι, όταν η Java υλοποιείται σε κάποια πλατφόρµα, δηµιουργείται µια νέα τάξη που προέρχεται από την τάξη Graphics. Η νέα τάξη είναι αυτή που στην πραγµατικότητα παρέχει τις ικανότητες σχεδίασης. Η υλοποίηση αυτή δεν είναι φανερή στον προγραµµατιστή κι έτσι αυτός µπορεί να χρησιµοποιήσει τις µεθόδους της τάξης Graphics για να σχεδιάσει µε τρόπο που είναι ανεξάρτητος από την εκάστοτε πλατφόρµα υλισµικού και λογισµικού. Η µέθοδος paint της τάξης Component παίρνει ως παράµετρο ένα αντικεί- µενο τύπου Graphics που στην πραγµατικότητα είναι µια αναφορά ενός αντικει- µένου της τάξης που προέρχεται από την τάξη Graphics. Όταν οποιοδήποτε συστατικό µιας Γ Χ πρόκειται να εµφανιστεί στην οθόνη, τότε το σύστηµα καλεί αυτόµατα τη µέθοδο paint. Όπως ήδη αναφέραµε, ένας προγραµµατιστή πολύ σπάνια χρειάζεται να καλέσει άµεσα τη µέθοδο paint. Αντ αυτής καλεί συνήθως τη µέθοδο repaint(). Η τελευταία ζητά να κληθεί η µέθοδος update (Graphics g)της τάξης Component όσο γίνεται πιο γρήγορα. Η µέθοδος update καθορίζει το παρασκήνιο του συστατικού από οτιδήποτε περιέχει και καλεί η ίδια άµεσα τη µέθοδο paint. Η µέθοδος update, όπως και η µέθοδος paint, παίρνει και αυτή ως παρά- µετρο ένα αντικείµενο τύπου Graphics που στην πραγµατικότητα είναι µια α- ναφορά αντικειµένου της τάξης που προέρχεται από την τάξη Graphics. Το α- ντικείµενο αυτό παρέχεται αυτόµατα από το σύστηµα στη µέθοδο update.

26 518 Προγραµµατισµός µε Java Ένα αντικείµενο τύπου Graphics έχει διάφορες ιδιότητες που απαιτούνται για την εµφάνισή του. Μερικές από τις ιδιότητες αυτές είναι: το αντικείµενο-συστατικό πάνω στο οποίο θα σχεδιαστεί τις συντεταγµένες το τρέχον χρώµα του το τρέχον font του κ.ά. Μερικές από τις µεθόδους της τάξης Graphics δίνονται στα παρακάτω. Όπου δεν αναφέρεται ρητά οι µέθοδοι αυτές χρησιµοποιούν το τρέχον χρώµα των γραφικών συµφραζοµένων. Οι παράµετροι width (πλάτος) και height (ύψος) πρέπει να έχουν µη αρνητικές τιµές, ειδάλλως το εν λόγω σχήµα δε θα εµφανιστεί. Οι συντεταγµένες αυτές µετριούνται σε εικονοστοιχεία από το πάνω αριστερά σηµείο του παραθύρου του υποδοχέα. Οι συντεταγµένες (0, 0) αντιστοιχούν στην άνω αριστερά γωνία του παραθύρου του υποδοχέα: public abstract void drawstring (String συµβολοσειρά, int x, int y) σχεδιάζει τη συµβολοσειρά αρχίζοντας από τη θέση (x, y) public abstract void drawline (int x1, int y1, int x2, int y2) σχεδιάζει µια γραµµή µεταξύ των σηµείων (x1, y1) και (x2, y2) public void drawrect (int x, int y, int width, int height) σχεδιάζει ένα ορθογώνιο παραλληλόγραµµο που έχει πλάτος width και ύψος height. Η πάνω αριστερή γωνία του ορθογωνίου έχει συντεταγµένες (x, y) public abstract void fillrect (int x, int y, int width, int height) όπως η προηγούµενη µέθοδος, µόνο που το ορθογώνιο είναι γεµάτο µε το τρέχον χρώµα public abstract void clearrect (int x, int y, int width, int height) όπως η προηγούµενη µέθοδος, µόνο που το ορθογώνιο έχει το τρέχον παρασκηνιακό χρώµα της τρέχουσας επιφανείας σχεδίασης. public abstract void drawroundrect (int x, int y, int width, int height, int arcwidht, int archeight)

27 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 519 σχεδιάζει ένα ορθογώνιο παραλληλόγραµµο που έχει πλάτος width και ύψος height και στρογγυλές γωνίες πλάτους arcwidht και ύψους archeight public abstract void fillroundrect (int x, int y, int width, int height, int arcwidht, int archeight) όπως η προηγούµενη µέθοδος µόνο που το ορθογώνιο µε τις στρογγυλές γωνίες είναι γεµάτο µε το τρέχον χρώµα public abstract void drawoval (int x, int y, int width, int height) σχεδιάζει µια έλλειψη που έχει πλάτος width και ύψος height. Η πάνω αριστερά γωνία του ορθογωνίου που περικλείει την έλλειψη αυτή έχει συντεταγµένες (x, y). Η έλλειψη αγγίζει και τις τέσσερις πλευρές του ορθογωνίου αυτού στο κέντρο τους public abstract void filloval (int x, int y, int width, int height) όπως η προηγούµενη µέθοδος µόνο που η έλλειψη είναι χρωµατισµένη µε το τρέχον χρώµα public abstract void drawarc (int x, int y, int width, int height, int αρχική_γωνία, int γωνία_τόξου) σχεδιάζει ένα τόξο που έχει γωνία_τόξου µοιρών, ξεκινώντας από την αρχική_ γωνία. Αρνητικές τιµές της παραµέτρου γωνία_τόξου σηµαίνουν σχεδίαση του τόξου µε φορά ίδια µε αυτή των δεικτών του ρολογιού, ενώ θετικές τιµές σηµαίνουν σχεδίαση µε φορά αντίθετη από αυτήν των δεικτών του ρολογιού. Η τιµή 0 της παραµέτρου αρχική_γωνία αντιστοιχεί στο δεξιότερο σηµείο της έλλειψης στην οποία ανήκει το τόξο. Τέλος, οι παράµετροι x και y προσδιορίζουν το πάνω αριστερό σηµείο του ορθογωνίου, στο οποίο είναι περικλείεται η έλλειψη, ενώ οι παράµετροι width και height το πλάτος και το ύψος του ορθογωνίου ατού, αντίστοιχα public abstract void fillarc (int x, int y, int width, int height, int αρχική_γωνία, int γωνία_τόξου) όπως και η προηγούµενη µέθοδος, µόνο που το τόξο είναι χρωµατισµένο µε το τρέχον χρώµα public abstract Color getcolor () επιστρέφει το τρέχον χρώµα των γραφικών συµφραζοµένων public abstract void setcolor (Color c) θέτει το τρέχον χρώµα αυτών των γραφικών συµφραζοµένων σε c public abstract Font getfont ()

28 520 Προγραµµατισµός µε Java επιστρέφει το τρέχον Font public abstract void setfont (Font font) θέτει το τρέχον font, στυλ και µέγεθος σ αυτά που προσδιορίζει η παράµετρος font public abstract void translate (int x, int y) µεταφράζει τις αρχικές συντεταγµένες των γραφικών συµφραζοµένων στο σηµείο (x, y) του τρέχοντος συστήµατος συντεταγµένων. Τροποποιεί τα γραφικά συµφραζόµενα έτσι ώστε η νέα τους αρχή να αντιστοιχεί στο σηµείο (x, y) στο αρχικό σύστηµα συντεταγµένων των γραφικών αυτών συµφραζοµένων. Όλες οι συντεταγµένες που χρησιµοποιούνται ακολούθως για τα συµφραζόµενα αυτά θα είναι σχετικές ως προς τη νέα αρχή. Παράδειγµα 18.7 import java.awt.*; import javax.swing.*; import java.io.*; public class ShapeDrawing extends JFrame // σχεδιάζει γραµµές, ορθογώνια ή ελλείψεις, ανάλογα µε // την επιλογή του χρήστη { static int choice; // η επιλογή του χρήστη public ShapeDrawing () { getcontentpane ().setbackground (new Color (209, 155, 73)); setsize (400, 400); setvisible (true); } // ShapeDrawing public void paint (Graphics g) { super.paint(g); // δεν είναι απαραίτητη 5 for ( int i = 0; i < 10; i++ ) { switch (choice) { case 1: // σχεδίαση γραµµών settitle ("Γραµµές"); g.drawline( 50, 50, 300, 50 + i*10 ); break; 5 Αλλά, αν την παραλείψουµε, µπορεί να προκύψουν περίπλοκα µικρά σφάλµατα σε εφαρµογές ή µικροεφαρµογές που συνδυάζουν εµφάνιση γραφικών µε γραφικές διεπαφές χρήστη.

29 Κεφάλαιο 18: Γραφικές ιεπαφές Χρήστη και Γραφικά 521 case 2: // σχεδίαση ορθογωνίων settitle ("Ορθογώνια"); g.drawrect( 50 + i*10, 50 + i*10, i*10, i*10 ); break; case 3: // σχεδίαση ελλείψεων settitle ("Ελλείψεις"); g.drawoval( 50 + i*10, 50 + i*10, i*10, i*10 ); break; default: // λανθασµένη επιλογή settitle ("Λανθασµένη Επιλογή"); g.drawstring ("Προσπαθήστε Ξανά", 50, 100); } } } // paint public static void main (String args[]) throws IOException { // ζητάει από το χρήστη να επιλέξει το προς // σχεδίασε σχήµατα System.out.println ("1. Σχεδίαση Γραµµών"); System.out.println ("2. Σχεδίαση Ορθογωνίων"); System.out.println ("3. Σχεδίαση Ελλείψεων"); System.out.print ("Εισάγετε την επιλογή σας: "); choice = my.readint (); ShapeDrawing efarmogh = new ShapeDrawing (); efarmogh.setdefaultcloseoperation(exit_on_close); } // main } // ShapeDrawing Τα αποτελέσµατα της εκτέλεσης του προγράµµατος της εφαρµογής αυτής (ανάλογα µε την επιλογή του χρήστη) παρουσιάζονται στην Εικόνα 7 του ένθετου του βιβλίου Η τάξη Color Η τάξη Color ορίζει σταθερές και µεθόδους για την επεξεργασία χρωµάτων σε προγράµµατα της Java. Οι δηµόσιες στατικές σταθερές τύπου Color που ορίζει η τάξη αυτή είναι:

30 522 Προγραµµατισµός µε Java Σταθερά Χρώµα Τιµή RGB black (BLACK) µαύρο 0, 0, 0 blue (BLUE) µπλε 0, 0, 255 cyan (CYAN) κυανό 0, 255, 255 darkgray (DARK_GRAY) σκούρο γκρίζο 64, 64, 64 gray (GRAY) γκρίζο 128, 128, 128 green (GREEN) πράσινο 0, 255, 0 lightgray (LIGHT_GRAY) ελαφρύ γκρίζο 192, 192, 192 magenta (MAGENTA) βαθύ κόκκινο 255, 0, 255 orange (ORANGE) πορτοκαλί 255, 200, 0 pink (PINK) ροζ 255, 175, 175 red (RED) κόκκινο 255, 0, 0 white (WHITE) λευκό 255, 255, 255 yellow (YELLOW) κίτρινο 255, 255, 0 Οποιοδήποτε χρώµα µπορεί να αναπαραχθεί από συνδυασµό των χρωµάτων κόκκινο (red), πράσινο (green) και µπλε (blue). Οι αναλογίες των χρωµάτων αυτών είναι γνωστές ως τιµές RGB και οι τιµές αυτές µπορεί να είναι ακέραιες στην περιοχή 0 ως 255 ή κινητής υποδιαστολής στην περιοχή 0.0F ως 1.0F. Η πρώτη τιµή προσδιορίζει το ποσοστό του κόκκινου, η δεύτερη το ποσοστό του πράσινου και η τρίτη το ποσοστό του µπλε. Η Java επιτρέπει στον προγραµµατιστή να επιλέξει µεταξύ 256x256x256 (περίπου 16.7 εκατοµµύρια διαφορετικά χρώµατα). Μερικοί από τους κατασκευαστές της τάξης Color είναι: public Color (int r, int g, int b, int a) δηµιουργεί ένα χρώµα που βασίζεται στις τιµές από 0 έως 255 των r (κόκκινο), g (πράσινο) και b (µπλε). Η παράµετρος a προσδιορίζει τη διαφάνεια του χρώµατος. Αν η τιµή του a είναι ίση µε 255 το χρώµα είναι τελείως αδιαφανές. Ενώ αν η τι- µή του a είναι ίση µε 0, τότε το χρώµα είναι τελείως διαφανές public Color (int r, int g, int b) όπως και η παραπάνω µέθοδος, δηµιουργεί ένα χρώµα που βασίζεται στις τιµές από 0 έως 255 των r (κόκκινο), g (πράσινο) και b (µπλε). Ισοδυναµεί µε την Color(r, g, b, 255) public Color (float r, float g, float b, float a) δηµιουργεί ένα χρώµα που βασίζεται στις τιµές από 0.0f έως 1.0f των r (κόκκινο), g (πράσινο) και b (µπλε) [οι παράµετροι εδώ είναι τύπου float]. Η παράµετρος a προσδιορίζει, όπως και παραπάνω, τη διαφάνεια του χρώµατος (αν

Εργαστήριο #12. Βήμα 1 ο. Βήμα 2 ο. Βήμα 3 ο. Βήμα 4 ο.

Εργαστήριο #12. Βήμα 1 ο. Βήμα 2 ο. Βήμα 3 ο. Βήμα 4 ο. Εργαστήριο #12 Από τα προηγούμενα εργαστήρια: Το εργαστήριο αυτό είναι ανεξάρτητο από τα προηγούμενα επειδή όμως ασχολείται με τη γλώσσα JavaScript, βεβαιωθείτε ότι έχετε διαβάσει το εισαγωγικό Παράρτημα

Διαβάστε περισσότερα

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

ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ. Η Γλώσσα Προγραµµατισµού Java ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ Η Γλώσσα Προγραµµατισµού Java Εισαγωγή στη Java Η γλώσσα προγραµµατισµού Java είναι από τις δηµοφιλέστερες στο είδος της και µπορεί να χρησιµοποιηθεί τόσο για αυτόνοµες εφαρµογές

Διαβάστε περισσότερα

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

ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1) ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ- SWING (1) Πλεονεκτήματα έναντι του awt Περισσότερα συστατικά Επεκτεταμένα χαρακτηριστικά συστατικών Καλύτερη εμφάνιση και αίσθηση Καλύτερος χειρισμός συμβάντων Πιο συμβατά προγράμματα

Διαβάστε περισσότερα

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

Βιοϊατρική τεχνολογία Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

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

Εργαστήριο Java. Αντικείµενο: Δίκτυα. Χειρισµός URLs. Άσκηση 1. Lab11. Πακέτο java.net Εργαστήριο Java Lab11 Αντικείµενο: Δίκτυα Πακέτο java.net H Java παρέχει ένα σύνολο από ενσωµατωµένες δυνατότητες για δηµιουργία εφαρµογών στο Internet ή σε τοπικά δίκτυα. H Java παρέχει τα stream sockets

Διαβάστε περισσότερα

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13 Περιεχόμενα Πρόλογος... 13 ΜΕΡΟΣ ΠΡΩΤΟ Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού Προγράμματα και Λειτουργικά Συστήματα... 17 Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων...

Διαβάστε περισσότερα

Πίνακες, περιγράµµατα και σκίαση

Πίνακες, περιγράµµατα και σκίαση Πίνακες, περιγράµµατα και σκίαση Οι πίνακες Οι πίνακες είναι ορθογώνια πλαίσια που χωρίζονται σε γραµµές και στήλες. Η τοµή µιας γραµµής µε µια στήλη προσδιορίζει ένα κελί. Τα στοιχεία, που παρουσιάζουµε,

Διαβάστε περισσότερα

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5) ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.

Διαβάστε περισσότερα

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Εντολές ελέγχου συγκρίσεων επιλογής ή διακλαδώσεων ( if switch) Μία από τις σημαντικότερες

Διαβάστε περισσότερα

ζωγραφίζοντας µε τον υπολογιστή

ζωγραφίζοντας µε τον υπολογιστή ζωγραφίζοντας µε τον υπολογιστή Μια από τις εργασίες που µπορούµε να κάνουµε µε τον υπολογιστή είναι και η ζωγραφική. Για να γίνει όµως αυτό πρέπει ο υπολογιστής να είναι εφοδιασµένος µε το κατάλληλο πρόγραµµα.

Διαβάστε περισσότερα

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

Προγραμματισμός Διαδικτύου 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προγραμματισμός Διαδικτύου Ενότητα 5 : Γραφικά με την χρήση του πακέτου AWT Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Δημιουργώντας μια εφαρμογή ζωγραφικής. 2 η Εργασία

Δημιουργώντας μια εφαρμογή ζωγραφικής. 2 η Εργασία Δημιουργώντας μια εφαρμογή ζωγραφικής 2 η Εργασία Απαιτήσεις 1. Σύνδεση στο Διαδίκτυο (διότι οι εφαρμογές δημιουργούνται online) 2. Εγκατεστημένος ο Browser Google Chrome 3. Υπαρκτός λογαριασμός Gmail

Διαβάστε περισσότερα

Εισαγωγή στο Libre Office. Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ

Εισαγωγή στο Libre Office. Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ Εισαγωγή στο Libre Office Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ Εισαγωγή στο Libre Ofiice To LibreOffice είναι η ελεύθερη, πολυδύναμη (power-packed), σουΐτα προσωπικής παραγωγικότητας

Διαβάστε περισσότερα

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

Εφαρμογή Αναζήτησης στον Ελληνικό Γεωγραφικό Χώρο ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εφαρμογή Αναζήτησης στον Ελληνικό Γεωγραφικό Χώρο Καβάλα 2012 Σπουδαστής : Λιάνος Άγγελος,

Διαβάστε περισσότερα

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης Οδηγάµε το Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Φύλλο Εργασίας Προγραµµατισµός Εφαρµογής στο AppInventor http://ai2.appinventor.mit.edu Ακολουθώντας τα βήµατα αυτού του φύλλου εργασίας, θα αναπτύξουµε

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εισαγωγή στον Προγ/μό Η/Υ

Εισαγωγή στον Προγ/μό Η/Υ Εισαγωγή στον Προγ/μό Η/Υ Ενότητα 7 2ο μέρος: Επιπλέον έννοιες σχετικά με αντικείμενα Διδάσκων: Μιχάλης Τίτσιας Περιεχόμενα Τι μπορεί να περιέχει μια τάξη Μέθοδοι τάξης και σταθερές τάξης Πολυμορφισμός

Διαβάστε περισσότερα

Shift+γράμμα. Πατάμε τον τόνο (δί[λα στο L) και μετά το φωνήεν. Πως βάζουμε διαλυτικά; Πατάμε το Shift+ τόνο και μετά το φωνήεν (ι ή υ)

Shift+γράμμα. Πατάμε τον τόνο (δί[λα στο L) και μετά το φωνήεν. Πως βάζουμε διαλυτικά; Πατάμε το Shift+ τόνο και μετά το φωνήεν (ι ή υ) Βασικές λειτουργίες του πληκτρολογίου Αλλαγή μεταξύ Αγγλικών και Ελληνικών Όταν γράφουμε σε πεζά (μικρά) και θέλουμε να γράψουμε ένα γράμμα κεφαλαίο Όταν γράφουμε συνέχεια Κεφαλαία Για να γράψουμε ένα

Διαβάστε περισσότερα

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,

Διαβάστε περισσότερα

public void printstatement() { System.out.println("Employee: " + name + " with salary: " + salary);

public void printstatement() { System.out.println(Employee:  + name +  with salary:  + salary); Κληρονομικότητα Η κληρονομικότητα (inheritance) αποτελεί έναν από τους χαρακτηριστικότερους μηχανισμούς των αντικειμενοστρεφών γλωσσών προγραμματισμού. Επιτρέπει την δημιουργία μιας νέας κλάσης απορροφώντας

Διαβάστε περισσότερα

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

Διαβάστε περισσότερα

Εγχειρίδιο Χρήστη. Ιούνιος 2009. Σελίδα - 1 -

Εγχειρίδιο Χρήστη. Ιούνιος 2009. Σελίδα - 1 - Εγχειρίδιο Χρήστη Ιούνιος 2009 Σελίδα - 1 - 1 Γενικά Η εφαρμογή Intelsoft Hotel (IS HOTEL) αφορά τη διαχείριση μίας μικρής ξενοδοχειακής μονάδας και επιτρέπει τη διαχείριση : των δωματίων και των πελατών

Διαβάστε περισσότερα

Μορφοποίηση εικόνων. Εισαγωγή. Στόχος κεφαλαίου

Μορφοποίηση εικόνων. Εισαγωγή. Στόχος κεφαλαίου Περιεχόμενα Κεφάλαιο 1: Προετοιμασία παρουσίασης...1 Κεφάλαιο 2: Διαχείριση διαφανειών...18 Κεφάλαιο 3: Διαχείριση γραφικών...31 Κεφάλαιο 4: Επεξεργασία εικόνων με το Adobe Photoshop...56 Κεφάλαιο 5: Μορφοποίηση

Διαβάστε περισσότερα

Το πρόγραμμα Skype (έκδοση 4.0.0.226)

Το πρόγραμμα Skype (έκδοση 4.0.0.226) Το πρόγραμμα Skype (έκδοση 4.0.0.226) Το Skype είναι ένα πρόγραμμα με το οποίο μπορούμε να μετατρέψουμε τον υπολογιστή μας σε βιντεοτηλέφωνο! Για να είναι ικανοποιητική η ποιότητα του ήχου και πολύ περισσότερο

Διαβάστε περισσότερα

Visual Basic Γλώσσα οπτικού

Visual Basic Γλώσσα οπτικού Visual Basi Γλώσσα οπτικού προγραµµατισµού «Η αρχή είναι το ήµισυ του παντός» Κουλλάς Χρίστος www.oullas.om oullas 2 Στόχοι Μαθήµατος Οι µαθητές να µπορούν: να εξηγούν τι είναι η Visual Basi. ναεξηγούνταστάδιαδηµιουργίας

Διαβάστε περισσότερα

6 Το μικρό βιβλίο για το ελληνικό Word 2010

6 Το μικρό βιβλίο για το ελληνικό Word 2010 Περιεχόμενα Κεφάλαιο 1 Microsoft Word 2010... 7 Κεφάλαιο 2 ημιουργία νέου εγγράφου... 13 Κεφάλαιο 3 Το σύστημα Βοήθειας του Office... 26 Κεφάλαιο 4 Μετακίνηση σε έγγραφο και προβολές εγγράφου... 31 Κεφάλαιο

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Nα κατασκευάσουν πίνακες από δεδομένα. Να κατασκευάσουν συναρτήσεις με πίνακες. Να κάνουν χρήση

Διαβάστε περισσότερα

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

Διαβάστε περισσότερα

Ο ΗΓΙΕΣ DOCUMENT DESIGNER

Ο ΗΓΙΕΣ DOCUMENT DESIGNER Ο ΗΓΙΕΣ DOCUMENT DESIGNER ΕΙΣΑΓΩΓΗ Εάν δεν επιθυµείτε να χρησιµοποιείτε τις προσχεδιασµένες φόρµες εντύπων της Singular, η εργασία αυτή σας δίνει τη δυνατότητα να σχεδιάζετε φόρµες µε βάση τις οποίες επιθυµείτε

Διαβάστε περισσότερα

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

Το πρόγραμμα 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 υποστηρίζει

Διαβάστε περισσότερα

Πολύ Οδηγοί - Mleaders

Πολύ Οδηγοί - Mleaders Web: http://www.loulakis.gr email: info@loulakis.gr Web:http://www.cadseminars.gr mail: info@cadseminars.gr 109 Πολύ Οδηγοί - Mleaders To Autocad 2008 περιέχει καινούργιους Πολύ-οδηγούς (Multileaders)

Διαβάστε περισσότερα

Πρακτική εφαρμογή στην ειδικότητα: Λογισμικό για τη δημιουργία εργασίας εξαμήνου

Πρακτική εφαρμογή στην ειδικότητα: Λογισμικό για τη δημιουργία εργασίας εξαμήνου Το SketchUp αρχικά ήταν ένα πρόγραμμα της εταιρείας @Last Software σχεδιασμένο για αρχιτέκτονες, πολιτικούς μηχανικούς, σκηνοθέτες, παραγωγούς video-games και ξεκίνησε να γίνεται γνωστό ως ένα γενικής

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9. 2 ημιουργία νέου εγγράφου... 17. 3 Το σύστημα Βοήθειας του Office...

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9. 2 ημιουργία νέου εγγράφου... 17. 3 Το σύστημα Βοήθειας του Office... Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 1 Microsoft Word 2010... 9 2 ημιουργία νέου εγγράφου... 17 3 Το σύστημα Βοήθειας του Office... 31 4 Μετακίνηση σε έγγραφο και προβολές εγγράφου... 37 5 Επιλογή

Διαβάστε περισσότερα

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5 Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών

Διαβάστε περισσότερα

Εισαγωγή 6. Δημιουργία λογαριασμού 13. Εγκατάσταση και λειτουργία του Skype 28. Βασικές λειτουργίες 32. Επιλογές συνομιλίας 48

Εισαγωγή 6. Δημιουργία λογαριασμού 13. Εγκατάσταση και λειτουργία του Skype 28. Βασικές λειτουργίες 32. Επιλογές συνομιλίας 48 ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή 6 Δημιουργία λογαριασμού 13 Εγκατάσταση και λειτουργία του Skype 28 Βασικές λειτουργίες 32 Επιλογές συνομιλίας 48 Γενικές ρυθμίσεις Skype 64 Το Skype σε φορητές συσκευές 78 Εγγραφή

Διαβάστε περισσότερα

Δημιουργία η-μαθήματος με τη. 3 ο Μέρος Εισαγωγή πληροφοριών: δημιουργία ιστοσελίδας

Δημιουργία η-μαθήματος με τη. 3 ο Μέρος Εισαγωγή πληροφοριών: δημιουργία ιστοσελίδας Δημιουργία η-μαθήματος με τη χρήση του Moodle 3 ο Μέρος Εισαγωγή πληροφοριών: δημιουργία ιστοσελίδας Δημιουργία η-μαθήματος με τη χρήση του Moodle 3 ο Μέρος Εισαγωγή πληροφοριών: δημιουργία ιστοσελίδας

Διαβάστε περισσότερα

Προγραµµατισµός ΙΙ Java 2

Προγραµµατισµός ΙΙ Java 2 Προγραµµατισµός ΙΙ Java 2 Γραφικά Γραφικά Τα γραφικά µπορούν να προσαρτηθούν τόσο σε προγράµµατα που υποστηρίζουν γραφικό περιβάλλον εργασίας: Σε µικροεφαρµογές Σε παραθυρικές εφαρµογές Και ΟΧΙ σε εφαρµογές

Διαβάστε περισσότερα

Συνεργείο Αυτοκινήτων

Συνεργείο Αυτοκινήτων Συνεργείο Αυτοκινήτων v2.102, Οκτώβριος 2015 Σύντοµες οδηγίες χρήσης Εισαγωγή Το πρόγραµµα Συνεργείο Αυτοκινήτων έχει σκοπό τη διαχείριση και παρακολούθηση του πελατολογίου, των αυτοκινήτων και των εργασιών

Διαβάστε περισσότερα

Μενού Προβολή. Προβολές εγγράφου

Μενού Προβολή. Προβολές εγγράφου Μενού Προβολή Προβολές εγγράφου Το Word παρέχει πέντε διαφορετικού είδους προβολές στον χρήστη, οι οποίες και βρίσκονται στο μενού Προβολή (View). Εναλλακτικά μπορούμε να επιλέξουμε το είδος προβολής που

Διαβάστε περισσότερα

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

Πως θα κατασκευάσω το πρώτο πρόγραμμα; Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer

Διαβάστε περισσότερα

ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΜΕ ΕXCEL

ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΜΕ ΕXCEL ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΜΕ ΕXCEL 1. Εισαγωγή δεδομένων σε φύλλο εργασίας του Microsoft Excel Για να τοποθετήσουμε τις μετρήσεις μας σε ένα φύλλο Excel, κάνουμε κλικ στο κελί στο οποίο θέλουμε να τοποθετήσουμε

Διαβάστε περισσότερα

Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL

Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC Η Visual Basic είναι μια γλώσσα προγραμματισμού οδηγούμενη από συμβάντα που έχει ένα ολοκληρωμένο περιβάλλον ανάπτυξης Έχει δημιουργηθεί από τη

Διαβάστε περισσότερα

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

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων Εργαστήριο Java Αντικείμενο: Αρχεία Πακέτο java.io Πακέτο java.io.zip Στην Java δεν υπάρχει η έννοια των εγγραφών μέσα σε ένα αρχείο. Ο προγραμματιστής πρέπει να κατασκευάσει το αρχείο κατάλληλα έτσι ώστε

Διαβάστε περισσότερα

2. Κάντε κλικ στο παράθυρο όψης Top για να το ενεργοποιήσετε, ώστε να σχεδιάσετε το πάτωµα του δωµατίου.

2. Κάντε κλικ στο παράθυρο όψης Top για να το ενεργοποιήσετε, ώστε να σχεδιάσετε το πάτωµα του δωµατίου. Άσκηση 7 Σύνθετα Αντικείµενα Στόχος της άσκησης Στόχος της παρούσας άσκησης είναι η εξοικείωση µε τη δηµιουργία σύνθετων αντικειµένων που δηµιουργούνται από τον συνδυασµό δύο ή περισσότερων τρισδιάστατων

Διαβάστε περισσότερα

Βοηθητικό Εγχειρίδιο

Βοηθητικό Εγχειρίδιο AGFN EXPERT LITE Χρηµατιστήριο Αθηνών Χρηµατιστήριο Αξιών Κύπρου Βοηθητικό Εγχειρίδιο Version 7.5.0.322 ΠΕΡΙΕΧΟΜΕΝΑ 1. ΕΙΣΑΓΩΓΗ... 2 1.1. ΕΚΚΙΝΗΣΗ ΕΦΑΡΜΟΓΗΣ AGFN EXPERTLITE... 2 2. ΣΥΝ ΕΣΗ (LOGIN)... 3

Διαβάστε περισσότερα

GET SDI PORTAL v1. Οδηγός Βοήθειας

GET SDI PORTAL v1. Οδηγός Βοήθειας GET SDI PORTAL v1 Οδηγός Βοήθειας Μεταδεδομένα εγγράφου Στοιχείο/Element Τιμή/value Ημερομηνία/Date 2011-06-16 Τίτλος/Title GETSDIPortal_v1_Help_v1.0 Θέμα/Subject Οδηγός Βοήθειας Έκδοση/Version 1.0 Σελίδα

Διαβάστε περισσότερα

Singular Report Generator. Σχ 1 ηµιουργία Καταστάσεων SRG

Singular Report Generator. Σχ 1 ηµιουργία Καταστάσεων SRG Μια από τις πιο σηµαντικές ανάγκες που αντιµετωπίζει µια επιχείρηση κατά την εγκατάσταση ενός λογισµικού «πακέτου» (Οικονοµικής & Εµπορικής ιαχείρισης), είναι ο τρόπος µε τον οποίο πρέπει να ανταποκριθεί

Διαβάστε περισσότερα

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

ΠΠΜ 500: Προχωρημένη Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής. 2D Graphics API. Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.

ΠΠΜ 500: Προχωρημένη Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής. 2D Graphics API. Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac. 12. Δισδιάστατα γραφικά και 2D Graphics API Χειμερινό Εξάμηνο 2012 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Εισαγωγή στα 2D Graphics Graphics Contexts and Graphics

Διαβάστε περισσότερα

Μέθοδοι. Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων

Μέθοδοι. Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων Μέθοδοι Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων Μέθοδοι Οιµέθοδοικαθορίζουντηνσυµπεριφοράενόςαντικειµένου. Τα βασικά µέρη από τα οποία αποτελείται µία µέθοδος είναι τα εξής: Το όνοµα της µεθόδου

Διαβάστε περισσότερα

ΣΧΕ ΙΑΣΜΟΣ ΕΠΙΦΑΝΕΙΑΣ Με το σχεδιασµό επιφάνειας (Custom επιφάνεια) µπορούµε να σχεδιάσουµε επιφάνειες και αντικείµενα που δεν υπάρχουν στους καταλόγους του 1992. Τι µπορούµε να κάνουµε µε το σχεδιασµό

Διαβάστε περισσότερα

Outlook Express-User Instructions.doc 1

Outlook Express-User Instructions.doc 1 Οδηγίες προς τους υπαλλήλους του ήµου Θεσσαλονίκης για την διαχείριση της ηλεκτρονικής τους αλληλογραφίας µε το Outlook Express (Ver 1.0 22-3-2011) (Για οποιοδήποτε πρόβληµα ή απορία επικοινωνήστε µε τον

Διαβάστε περισσότερα

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

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται

Διαβάστε περισσότερα

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 5 ο Έλεγχος Προγράµµατος Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Η εντολή if (Ι) Η εντολή if είναι µία από τις βασικότερες δοµές ελέγχου ροής στη C, αλλά και στις περισσότερες

Διαβάστε περισσότερα

Atlantis - Νέο user interface

Atlantis - Νέο user interface New Desktop 1 Atlantis - Νέο user interface ATLANTIS - ΝΕΟ USER INTERFACE...2 ΓΕΝΙΚΗ ΠΑΡΟΥΣΙΑΣΗ...3 ΓΡΑΜΜΗ ΣΥΣΤΗΜΑΤΟΣ...4 ΜΠΑΡΑ ΧΡΗΣΤΗ (USER TOOLBAR)...5 ΚΕΝΤΡΙΚΟ ΜΕΝΟΥ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ...6 Κεντρικό μενού

Διαβάστε περισσότερα

παράθυρα ιδακτικό υλικό µαθητή Πλήκτρα για να το παράθυρο Λωρίδα τίτλου Πλαίσιο παραθύρου

παράθυρα ιδακτικό υλικό µαθητή Πλήκτρα για να το παράθυρο Λωρίδα τίτλου Πλαίσιο παραθύρου ιδακτικό υλικό µαθητή παράθυρα Κατά τη διάρκεια της µελέτης µας γράφουµε και διαβάζουµε, απλώνοντας πάνω στο γραφείο τετράδια και βιβλία. Ξεκινώντας ανοίγουµε αυτά που µας ενδιαφέρουν πρώτα και συνεχίζουµε

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

Διαβάστε περισσότερα

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο:

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο: Τι είναι το GeoGebra; Γρήγορη Εκκίνηση Λογισμικό Δυναμικών Μαθηματικών σε ένα - απλό στη χρήση - πακέτο Για την εκμάθηση και τη διδασκαλία σε όλα τα επίπεδα της εκπαίδευσης Συνδυάζει διαδραστικά γεωμετρία,

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΡΥΘΜΙΣΗΣ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ GOOGLE EARTH ΓΙΑ ΤΡΙΣΔΙΑΣΤΑΤΗ ΠΡΟΒΟΛΗ ΕΔΑΦΟΥΣ

ΟΔΗΓΙΕΣ ΡΥΘΜΙΣΗΣ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ GOOGLE EARTH ΓΙΑ ΤΡΙΣΔΙΑΣΤΑΤΗ ΠΡΟΒΟΛΗ ΕΔΑΦΟΥΣ ΟΔΗΓΙΕΣ ΡΥΘΜΙΣΗΣ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ GOOGLE EARTH ΓΙΑ ΤΡΙΣΔΙΑΣΤΑΤΗ ΠΡΟΒΟΛΗ ΕΔΑΦΟΥΣ 1. Εγκατάσταση του Google Earth Οδηγίες εγκατάστασης του λογισμικού Google Earth είναι διαθέσιμες στην ιστοσελίδα του Υ.Π.Π.,

Διαβάστε περισσότερα

Στοιχεία εξεταζόµενου Αριθµός Απάντησης Βαθµολογία. Σύνολο (Θέµα 4 ο )

Στοιχεία εξεταζόµενου Αριθµός Απάντησης Βαθµολογία. Σύνολο (Θέµα 4 ο ) Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Εισαγωγή στον Προγραµµατισµό των Υπολογιστών Καθηγητής Ι. Κάβουρας Εξεταστική περίοδος Φεβρουαρίου 2004 Τετάρτη 10/3/2004, ώρα 8.00 Στοιχεία εξεταζόµενου

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 2

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 2 ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 2 Μάθαµε στο προηγούµενο µάθηµα πώς να δίνουµε ονόµατα στις ιστοσελίδες µας, να βάζουµε χρώµα και γραφικά, ή ακόµα να δηµιουργούµε υπερσυνδέσµους σε κείµενο και εικόνες. Σήµερα µεταξύ

Διαβάστε περισσότερα

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα.

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα. «Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα. Πώς θα δουλέψεις με το Χελωνόκοσμο την πρώτη φορά 1. Θα χρησιμοποιήσεις το αριστερό πλήκτρο

Διαβάστε περισσότερα

ΤΕΙ Ιονίων Νήσων Εργαστηριακές Ασκήσεις στα Γεωγραφικά Συστήματα Πληροφοριών

ΤΕΙ Ιονίων Νήσων Εργαστηριακές Ασκήσεις στα Γεωγραφικά Συστήματα Πληροφοριών ΕΡΓΑΣΤΗΡΙΟ 2 ο : Εισαγωγή στα Γεωγραφικά Συστήματα Πληροφοριών ArcMap (2/2) Μέρος 1: (συνέχεια από τα προηγούμενα) Κάνουμε κλικ το εικονίδιο Add Data στην γραμμή εργαλείων standard και επιλέγουμε το αρχείο/τα

Διαβάστε περισσότερα

Οδηγός γρήγορης εκκίνησης

Οδηγός γρήγορης εκκίνησης Οδηγός γρήγορης εκκίνησης Το Microsoft Word 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης. Γραμμή

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Το if-else statement Το if-else statement δουλεύει καλά όταν στο condition θέλουμε να περιγράψουμε μια επιλογή με δύο πιθανά ενδεχόμενα.

Διαβάστε περισσότερα

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008 Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word Βόλος, Νοέμβριος 2008 To Microsoft Word (έκδοση 2003) είναι ένας εξελιγμένος επεξεργαστής κειμένου, με τον οποίο μπορούμε να δημιουργήσουμε

Διαβάστε περισσότερα

New Project Windows Forms Applications

New Project Windows Forms Applications Ανάπτυξη απλής εφαρµογής. Solutions, Projects, GUI, Events, Debugging. New Project Windows Forms Applications Name: ΜyLucky7 Location: C:\... Solution Name: ΜyLucky7 OK (επιλογή έκδοσης του πλαισίου Εφαρµογών.NET)

Διαβάστε περισσότερα

Κεφάλαιο 1.Εντολές κίνησης

Κεφάλαιο 1.Εντολές κίνησης Προγραμματίζω με το ΒΥΟΒ 1 Κεφάλαιο 1.Εντολές κίνησης Από το μάθημα της Φυσικής γνωρίζουμε ότι κίνηση σημαίνει αλλαγή της θέσης ενός αντικειμένου. Οι εντολές κίνησης που μας παρέχει το ΒΥΟΒ χωρίζονται

Διαβάστε περισσότερα

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1 Εικόνα Εισαγωγή Ψηφιακή αναπαράσταση Κωδικοποίηση των χρωμάτων Συσκευές εισόδου και εξόδου Βάθος χρώματος και ανάλυση Συμβολική αναπαράσταση Μετάδοση εικόνας Σύνθεση εικόνας Ανάλυση εικόνας Τεχνολογία

Διαβάστε περισσότερα

Vodafone Business Connect

Vodafone Business Connect Vodafone Business Connect Vodafone Business WebHosting Αναλυτικός Οδηγός Χρήσης Photo Album Αναλυτικός οδηγός χρήσης: Photo Album Vodafone Business Connect - Υπηρεσίες φιλοξενίας εταιρικού e-mail & web

Διαβάστε περισσότερα

Βίντεο και κινούµενα σχέδια

Βίντεο και κινούµενα σχέδια Βίντεο και κινούµενα σχέδια Περιγραφή του βίντεο Ανάλυση του βίντεο Κωδικοποίηση των χρωµάτων Μετάδοση τηλεοπτικού σήµατος Συµβατικά τηλεοπτικά συστήµατα Τεχνολογία Πολυµέσων 06-1 Περιγραφή του βίντεο

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΧΡΗΣΗΣ WEBMAIL ΤΕΙ ΚΑΛΑΜΑΤΑΣ

ΟΔΗΓΟΣ ΧΡΗΣΗΣ WEBMAIL ΤΕΙ ΚΑΛΑΜΑΤΑΣ ΟΔΗΓΟΣ ΧΡΗΣΗΣ WEBMAIL ΤΕΙ ΚΑΛΑΜΑΤΑΣ ΠΕΡΙΕΧΟΜΕΝΑ 1. URL Διεύθυνση WebMail... 3 2. Εγκατάσταση Πιστοποιητικού Ασφάλειας... 3 2.1 Εγκατάσταση Πιστοποιητικού στον Internet Explorer... 3 2.2 Εγκατάσταση Πιστοποιητικού

Διαβάστε περισσότερα

Γενικά. Παράδειγμα 1o

Γενικά. Παράδειγμα 1o Γενικά Τα γραφήματα προσελκύουν την προσοχή και διευκολύνουν την προβολή συγκρίσεων, τάσεων σε δεδομένα. Για παράδειγμα, αντί να κάνει κανείς ανάλυση σε πολλές στήλες με αριθμούς στο φύλλο εργασίας μπορεί

Διαβάστε περισσότερα

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

Διαβάστε περισσότερα

1. Εισαγωγή...3 Συμβατότητα Browser...3 Διεύθυνση πρόσβασης...3 LoginScreen...3 Κύρια Εφαρμογή...4 2. Οδηγίες Χρήσης...5 Αρχική Σελίδα...

1. Εισαγωγή...3 Συμβατότητα Browser...3 Διεύθυνση πρόσβασης...3 LoginScreen...3 Κύρια Εφαρμογή...4 2. Οδηγίες Χρήσης...5 Αρχική Σελίδα... ΕΓΧΕΙΡΙ ΙΟ Ο ΗΓΙΩΝ Ηλεκτρονική Υπηρεσία Ενηµέρωσης Ιατρών Ειδικού Σώµατος Υγειονοµικών Επιτροπών ΚΕ.Π.Α 1 Πίνακας Περιεχομένων 1. Εισαγωγή...3 Συμβατότητα Browser...3 Διεύθυνση πρόσβασης...3 LoginScreen...3

Διαβάστε περισσότερα

Γραφικά µε Υπολογιστές. Μετασχηµατισµοί Σύνθετη Γεωµετρία

Γραφικά µε Υπολογιστές. Μετασχηµατισµοί Σύνθετη Γεωµετρία Γραφικά µε Υπολογιστές Μετασχηµατισµοί Σύνθετη Γεωµετρία Σύστηµα Συντεταγµένων Κάθε VRML κόσµος έχει το δικό του σύστηµα συντεταγµένων, το οποίο είναι ένα τρισδιάστατο καρτεσιανό σύστηµα, µε τηθετική πλευρά

Διαβάστε περισσότερα

Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας. Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0)

Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας. Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0) Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0) ΑΝΑΔΟΧΟΣ : SPACE COM A.E. INTRACOM IT SERVICES - QUALITY & RELIABILITY A.E. ΑΘΗΝΑ Ιούνιος 2008 Σελίδα

Διαβάστε περισσότερα

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στην Πληροφορική & τον Προγραμματισμό Ενότητα 11 η : Αντικείμενα Γραφικής Διασύνδεσης (Μέρος 1 ο ) Ι. Ψαρομήλιγκος Χ.

Διαβάστε περισσότερα

τουργικών χαρακτηριστικών πού έχουν µετατρέψει την αλληλεπίδραση του χρήση µε την εφαρµογή σε µια εύκολη και ευχάριστη διαδικασία.

τουργικών χαρακτηριστικών πού έχουν µετατρέψει την αλληλεπίδραση του χρήση µε την εφαρµογή σε µια εύκολη και ευχάριστη διαδικασία. Κεφάλαιο 10 Φόρµες Στο κεφάλαιο αυτό περιγράφεται ο τρόπος µε τον οποίο είναι δυνατή η δηµιουργία διαλόγων αλληλεπίδρασης µε το χρήση και η διαχείριση των δεδοµένων της εφαρµογής µέσα από ένα εύχρηστο

Διαβάστε περισσότερα

Microsoft PowerPoint 2007

Microsoft PowerPoint 2007 Information Technology Services and Solutions Σύμβουλοι Μηχανογράφησης και Εκπαίδευσης Στεφ. Σκουλούδη 27, Καλλίπολη, Πειραιάς 210 45 38 177 http://www.itss.gr/ Microsoft PowerPoint 2007 Κωνσταντίνος Κωβαίος

Διαβάστε περισσότερα

Εργαστήριο Γραφικών. Βοηθητικό Υλικό για την εκπόνηση των εργασιών Αφορά την 1 η Εργαστηριακή Άσκηση

Εργαστήριο Γραφικών. Βοηθητικό Υλικό για την εκπόνηση των εργασιών Αφορά την 1 η Εργαστηριακή Άσκηση 1 Εργαστήριο Γραφικών Βοηθητικό Υλικό για την εκπόνηση των εργασιών Αφορά την 1 η Εργαστηριακή Άσκηση Μέρος B Σπύρος Συρμακέσης Καθηγητής syrma@teimes.gr Εύη Φαλιάγκα Δρ. Μηχανικός Η/Υ efaliaga@teimes.gr

Διαβάστε περισσότερα

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ.

Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Τομέας Ηλεκτρονικής και Υπολογιστών 5 Εξάμηνο ΤΗΜΜΥ Α.Π.Θ 2015-2016 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ DS Prximity Το παιχνίδι Το Prximity είναι ένα παιχνίδι στρατηγικής,

Διαβάστε περισσότερα

Εισαγωγή και επεξεργασία δεδοµένων

Εισαγωγή και επεξεργασία δεδοµένων Μάθηµα 4 Εισαγωγή και επεξεργασία δεδοµένων Εισαγωγή δεδοµένων σε πίνακα 1. Ανοίγουµε το παράθυρο του πίνακα Υπάλληλοι σε προβολή φύλλου δεδοµένων. 2. Η κενή γραµµή, η οποία υπάρχει πάντα στον πίνακα,

Διαβάστε περισσότερα

ηµιουργία Β.. ανειστική Βιβλιοθήκη Μάθηµα 5 Ορισµός σχέσεων - Σύνδεση πινάκων

ηµιουργία Β.. ανειστική Βιβλιοθήκη Μάθηµα 5 Ορισµός σχέσεων - Σύνδεση πινάκων Μάθηµα 5 ηµιουργία Β.. ανειστική Βιβλιοθήκη - Ορισµός σχέσεων - Σύνδεση πινάκων ηµιουργία Β.. ανειστική Βιβλιοθήκη Η ανειστική Βιβλιοθήκη θα αποτελέσει ένα απλό, αλλά ολοκληρωµένο παράδειγµα δηµιουργίας

Διαβάστε περισσότερα

ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD

ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD ΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙ ΑΣ ΣΤΟ MICROSOFT WORD Σε ορισµένες περιπτώσεις είναι ιδιαίτερα χρήσιµη η δηµιουργία ιστοσελίδων ενηµερωτικού περιεχοµένου οι οποίες στη συνέχεια µπορούν να δηµοσιευθούν σε κάποιο τόπο

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

Διαβάστε περισσότερα

η σύνθεση ενός υπολογιστή

η σύνθεση ενός υπολογιστή ιδακτικό υλικό µαθητή η σύνθεση ενός υπολογιστή Αν παρατηρήσουµε έναν υπολογιστή βλέπουµε ότι αποτελείται από τα ακόλουθα µέρη: Οθόνη Μονάδα συστήµατος Ποντίκι Πληκτρολόγιο τη µονάδα συστήµατος, όπου βρίσκονται

Διαβάστε περισσότερα

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP.

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP. Εργαστήριο #5 Τι πρέπει να έχετε ολοκληρώσει από το προηγούμενο εργαστήριο. Θα πρέπει να ξέρετε να εισάγετε ένα βασικό πρόγραμμα PHP μέσα σε μια ιστοσελίδα, τη χρήση της echo και τον χειρισμό απλών μεταβλητών

Διαβάστε περισσότερα

Εισαγωγή στο Word 2007 Ν. Παπαδόπουλος

Εισαγωγή στο Word 2007 Ν. Παπαδόπουλος Εισαγωγή στο Word 2007 Ν. Παπαδόπουλος Πληκτρολογώ το διπλανό κείµενο. Επειδή το κείµενο αποτελείται από δύο παραγράφους πατάω το Enter µόνο στο τέλος της κάθε παραγράφου και όχι σε κάθε γραµµή 1. δηµιουργία

Διαβάστε περισσότερα

1. Γνωριμία Με Το Περιβάλλον Του Ηλεκτρονικού Υπολογιστή

1. Γνωριμία Με Το Περιβάλλον Του Ηλεκτρονικού Υπολογιστή WINDOWS ΣΤΟΧΟΙ: 1. Γνωριμία Με Το Περιβάλλον Του Ηλεκτρονικού Υπολογιστή 2. Γνωριμία Με Την Επιφάνεια Εργασίας (Desktop) 3. Ta Βασικά Εικονίδια Της Επιφάνειας Εργασίας (Desktop) 4. Κουμπιά Παραθύρων 5.

Διαβάστε περισσότερα

Άσκηση 1(Σκοπός αντικείμενο)

Άσκηση 1(Σκοπός αντικείμενο) Άσκηση 1( αντικείμενο) Εισαγωγή στο word το περιβάλλον εργασίας Αντικείμενο Γραμμή τίτλου - μενού εργαλεία εργαλειοσειρές χάρακες γραμμή κατάστασης ράβδοι κύλισης κουμπί κλεισίματος, ελαχιστοποίησης, μεγιστοποίησης

Διαβάστε περισσότερα

Εργαστήριο Εφαρμοσμένης Πληροφορικής

Εργαστήριο Εφαρμοσμένης Πληροφορικής Τμήμα Φυσικής - Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Εργαστήριο Εφαρμοσμένης Πληροφορικής Ομάδα Α. Προετοιμασία Αναφοράς Εργασία-2: Σύνθεση αναφοράς Σύνθεση Αναφοράς http://eep.physics.auth.gr Τι περιέχει

Διαβάστε περισσότερα