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

Σχετικά έγγραφα
Κεφάλαιο VI : Εργαστηριακές ασκήσεις που αφορούν τη δηµιουργία γραφικού περιβάλλοντος χρήστη στη Java.

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

Week 10: Graphical User Interfaces

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

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

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

Week 12: GUIs with Swing

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

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

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

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

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

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

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

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

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

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

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

8.1 Top-Level Swing Containers και Swing Components

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

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

ηµιουργία ιαλογικών Προγραµµάτων για το Web

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

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

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

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

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

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

Κεφάλαιο VIII : Εργαστηριακές ασκήσεις που αφορούν βοηθητικές εφαρµογές (Applets) στη Java.

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

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

ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 6 o ΕΡΓΑΣΤΗΡΙO

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

Certified Java Programmer (CJP)

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

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

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED αντικειμενοστραφής προγραμματισμός ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

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

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΑ attributes parameters

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

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

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

Ψηφιακό Εμπορικό Κέντρο

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

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

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

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

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

Εισαγωγή. Κεφάλαιο 2: Βασικές έννοιες Java Κεφάλαιο 3: Χρήση της Java στις σελίδες σας Κεφάλαιο 4: Οι πρώτες σας μικροεφαρμογές...

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

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

Οπτικός Προγραμματισμός σε NetBeans με Java Swing

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

New Project Windows Forms Applications

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

Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

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

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

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

12.6. Άσκηση 6 - [αξιοποίηση γραφικής διεπαφής (GUI)] (έκδοση 2006)

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στην Python και στο IDLE

Διάγραμμα Κλάσεων. Class Diagram

ΑΛΛΗΛΕΠΙ ΡΑΣΗ ΑΝΘΡΩΠΟΥ ΜΗΧΑΝΗΣ 2 o ΕΡΓΑΣΤΗΡΙO

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

Λίγα λόγια από το συγγραφέα...7

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

Μποχρίνη Σταυρούλα ΑΜ:3173 Σταθόπουλος Αναστάσιος ΑΜ:3220

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

ADULTS EDUCATE. Children. in safe & creative web. Hellenic Ministry of. Combating Digital Exclusion. Partners: Funded By

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

Δομές Δεδομένων & Ανάλυση Αλγορίθμων. 3ο Εξάμηνο. Ουρά (Queue) Υλοποίηση της με τη βοήθεια πίνακα.

Οδηγίες χρήσης εφαρμογής Ε.Ο.Π.Υ.Υ - Σύστημα Ηλεκτρονικής Προέγκρισης Φαρμάκων για Θεράποντες Ιατρούς

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

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

Σχεδιασμός εκτυπώσεων ERG

Oι βασικές πράξεις (λειτουργίες) που ορίζονται για τον τύπο στοίβα αναφέρονται παρακάτω:

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

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

Οδηγίες χρήσης εφαρμογής μητρώου ασθενών με Χρόνια Μυελογενή Λευχαιμία (Χ,Μ,Λ) Ιατρός

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων...

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

Ψηφιακό Εμπορικό Κέντρο v.1

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

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

ΕΡΓΑΣΤΗΡΙΟ ΠΛΗΡΟΦΟΡΙΚΗ I. 3o ΕΡΓΑΣΤΗΡΙΟ ΕΠΕΞΕΡΓΑΣΙΑ ΜΕ ΤΟ WORD

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ. Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής

Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

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

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

Αυτόνομοι Πράκτορες. Εργασία εξαμήνου. Value Iteration και Q- Learning για Peg Solitaire

Transcript:

Γραφικό Περιβάλλον Χρήστη. Πλαίσια και παράθυρα. Κουμπιά. Ετικέτες και πεδία κειμένου. Πλαίσια ελέγχου. Σύνθετα πλαίσια. Περιοχές κειμένου. Πάνελς. Διαχειριστές Διάταξης. Απόκριση σε δεδομένα που εισάγει ο χρήστης. Γραφικό Περιβάλλον Χρήστη Η δημιουργία γραφικού περιβάλλοντος χρήστη (GUI Graphical User Interface) βασίζεται σε δύο ομάδες κλάσεων: στις Swing και Abstract Windowing Toolkit. Ένα GUI περιλαμβάνει: Πλαίσια και παράθυρα Κουμπιά, πλαίσια ελέγχου, ετικέτες. Πεδία κειμένου, γραμμές κύλισης. Πτυσσόμενα και αναδυόμενα μενού. Πλαίσια διαλόγου και παράθυρα για applets.

Γραφικό Περιβάλλον Χρήστη Στη συναρμολόγηση ενός γραφικού περιβάλλοντος χρήστη εργαζόμαστε με δύο ειδών αντικείμενα : GUI Containers Components (Υποδοχείς) χ (Στοιχεία) χ Πλαίσια Παράθυρα Υποδοχείς JFrame JWindow Container Κουμπιά Ετικέτες Πεδία κειμένου JButton JLabel JTextField Πλαίσια και Παράθυρα Παράθυρα : είναι απλοί υποδοχείς χωρίς γραμμή τίτλου και βοηθητικά κουμπιά ελέγχου. Δημιουργούνται με την κλάση JWindow. Πλαίσια : είναι παράθυρα με γραμμή τίτλου και βοηθητικά κουμπιά ελέγχου. Δημιουργούνται με την κλάση JFrame. Για να κάνουμε το πακέτο Swing διαθέσιμο χρησιμοποιούμε την δήλωση: import javax.swing.*; Άσκηση : Γράψτε ένα πρόγραμμα το οποίο να δημιουργεί ένα πλαίσιο με τίτλο New Frame και διαστάσεις 400x300 pixels.

Πλαίσια και Παράθυρα Πλαίσια και Παράθυρα

Κουμπιά Τα κουμπιά είναι αντικείμενα της κλάσης JButton η οποία ανήκει στο πακέτο java.awt.swing. Διαδικασία δημιουργίας κουμπιού και τοποθέτηση του μέσα σε ένα πλαίσιο: Δημιουργία κουμπιού: JButton όνομα_κουμπιού = new JButton( Ετικέτα Κουμπιού ); Δημιουργία κατάλληλου υποδοχέα: Container όνομα_υποδοχέα = getcontentpane(); FlowLayout όνομα_διαχειριστή_διάταξης = new FlowLayout(); όνομα_υποδοχέα.setlayout(όνομα_διαχειριστή_διάταξης ); Πρόσθεση κουμπιού στον υποδοχέα: όνομα_υποδοχέα.add(όνομα_κουμπιού); Τοποθέτηση του υποδοχέα στο πλαίσιο: SetContentPane(όνομα_υποδοχέα ); Κουμπιά Άσκηση : Γράψτε ένα πρόγραμμα το οποίο να δημιουργεί ένα πλαίσιο με τίτλο New Frame και διαστάσεις 400x300 pixels. Τοποθετήστε μέσα δύο κουμπιά με ετικέτες One και Two.

Κουμπιά Κουμπιά

Ετικέτες και πεδία κειμένου Ετικέτες : είναι πληροφορίες οι οποίες δεν μπορούν να τροποποιηθούν από τον χρήστη και δημιουργούνται με την κλάση JLabel. JLabel όνομα_ετικέτας = new JLabel( Κείμενο ί ετικέτας.jlabel.right); b l Πεδία Κειμένου : είναι μιά περιοχή στην οποία ο χρήστης μπορεί να εισάγει μια μοναδική σειρά κειμένου. Δημιουργούνται με την κλάση JTextField. JTextField όνομα_πεδίου = new JTextField(20); Άσκηση : Γράψτε ένα πρόγραμμα το οποίο να δημιουργεί ένα πλαίσιο με τίτλο Eisagogi keimenou. Τοποθετήστε μέσα την ετικέτα Enter your Name και δίπλα ένα πεδίο κειμένου μήκους 40 χαρακτήρων. Εισάγεται το όνομά σας. Ετικέτες και πεδία κειμένου

Ετικέτες και πεδία κειμένου Πλαίσια ελέγχου Ένα στοιχείο JCheckBox είναι ένα πλαίσιο δίπλα σε μια γραμμή κειμένου, στο οποίο ο χρήστης μπορεί να προσθέσει ή να αφαιρέσει ένα σημάδι τσεκαρίσματος. JCheckBox όνομα = new JCheckBox( Ετικέτα ); JCheckBox όνομα = new JCheckBox( Ετικέτα, true); Παράδειγμα Άσκηση 6.1.4

Πλαίσια ελέγχου Σύνθετα πλαίσια Ένα στοιχείο JComboBox είναι μια αναδυόμενη λίστα επίλογών οι οποίες μπορούν να ρυθμιστούν έτσι ώστε να δέχονται εισαγωγή κειμένου. Δημιουργία αντικειμένου JComboBox: JComboBox όνομα = new JComboBox(); Πρόσθεση ενός στοιχείου επιλογής στη λίστα: όνομα.additem( Όνομα_στοιχείου_επιλογής ); Παράδειγμα Άσκηση 6.1.5

Σύνθετα πλαίσια Περιοχές κειμένου Ένα στοιχείο JTextArea είναι ένα πεδίο κειμένου το οποίο επιτρέπει στο χρήστη να εισάγει περισσότερες από μία σειρές κειμένου. Δημιουργία αντικειμένου JTextArea : JTextArea όνομα = new JTextArea(n1, n2); n1 = Αριθμός σειρών n2 = Αριθμός χαρακτήρων

Πάνελς Σκοπός των Πάνελς είναι να διαιρέσουν μια περιοχή εμφάνισης σε διάφορες ομάδες στοιχείων. Όταν η περιοχή εμφάνισης διαιρείται σε τμήματα μπορούμε να χρησιμοποιήσουμε διαφορετικούς κανόνες για τον τρόπο οργάνωσης καθενός από αυτά. Τα πάνελς δημιουργούνται με τη χρήση της κλάσης JPanel. JPanel όνομα = new JPanel(); Τα διάφορα στοιχεία προστίθενται στο πάνελ όνομα.add( στοιχείο ); Τα πάνελς προστίθενται σε έναν υποδοχέα. ιαχειριστές ιάταξης Η διάταξη των στοιχείων σε έναν υποδοχέα γίνεται μέσω των διαχειριστών διάταξης. Για παράδειγμα ένα υποδοχέας εργάζεται με το FlowLayout ως εξής: Δημιουργία του υποδοχέα: Container όνομα_υποδοχέα = getcontentpane(); Δημιουργία αντικειμένου διαχειριστή διάταξης FlowLayout: FlowLayout όνομα_διαχειριστή = new FlowLayout(); Ορισμός διαχειριστή διάταξης του υποδοχέα: όνομα_υποδοχέα.setlayout(όνομα_διαχειριστή); t(ό δ Εφαρμογή του υποδοχέα στο πλαίσιο. setcontentpane(όνομα_υποδοχέα );

ιαχειριστές ιάταξης FlowLayout : Τα διάφορα στοιχεία τοποθετούνται σε μια περιοχή με τον ίδιο τρόπο που οργανώνονται οι λέξεις σε μια τυπωμένη σελίδα. GridLayout : Οργανώνει τα στοιχεία σε συγκεκριμένο αριθμό στηλών και σειρών. GridLayout όνομα_διαχειριστή = new GridLayout(2,3); BorderLayout : Τοποθετεί τα στοιχεία σε πέντε περιοχές, τέσσερις σύμφωνα με τα σημεία του ορίζοντα ρζ και μία κεντρική περιοχή. BorderLayout όνομα_διαχειριστή = new BorderLayout (); όνομα_υποδοχέα.add(κουμπί1, BorderLayout.ΝΟRΤΗ); όνομα_υποδοχέα.add(κουμπί2, BorderLayout.EAST); όνομα_υποδοχέα.add(κουμπί3, BorderLayout.WEST); όνομα_υποδοχέα.add(κουμπί4, BorderLayout.SOUTH); όνομα_υποδοχέα.add(κουμπί5, BorderLayout.CENTER); Παράδειγμα Γράψτε ένα πρόγραμμα το οποίο να δημιουργεί το επόμενο πλαίσιο. (Άσκηση 6.1.6)

Παράδειγμα Παράδειγμα

Απόκριση σε δεδομένα που εισάγει ο χρήστης Η απόκριση στα συμβάντα χρήστη, σε ένα πρόγραμμα της Java, απαιτεί τη χρήση ενός ή περισσοτέρων διασυνδέσεων EventListener. Η προσθήκη μιας διασύνδεσης EventListener απαιτεί δύο διαφορετικά πράγματα: import java.awt.event.* ; public class Ονομα extends JFrame implements ActionListener{ } Απόκριση σε δεδομένα που εισάγει ο χρήστης Για να κάνουμε ένα αντικείμενο, πχ. JButton, να δημιουργήσει ένα συμβάν χρησιμοποιούμε την μέθοδο addactionlistener(). JButton calculate = new JButton( Calculate ).. calculate. addactionlistener(this);

Απόκριση σε δεδομένα που εισάγει ο χρήστης Η διασύνδεση ActionListener στέλνει συμβάντα σε μια κλάση η οποία ονομάζεται actionperformed(). public void actionperformed(actionevent evt) { Object source = evt.getsource(); } if(source==calculate){ } if(source==reset){ } Παράδειγμα Γράψτε ένα πρόγραμμα το οποίο να δημιουργεί το επόμενο πλαίσιο Στο πάνω πεδίο κειμένου να εισάγεται μια θερμοκρασία σε βαθμούς Celsius. Στη συνέχεια πατώντας το κουμπί Calculate να υπολογίζετε και να τυπώνετε στο κάτω πεδίο κειμένου η θερμοκρασία σε βαθμούς Fahrenheit. Το κουμπί Reset Values να σβήνει τις τρέχουσες τιμές στα δύο πεδία κειμένου

Παράδειγμα Παράδειγμα

Παράδειγμα Παράδειγμα