Παρουσίαση της Motif Αναστάσιος Κρυσταλλίδης Α.Μ.: 776 Δημήτρης Μπαμπαλίκης Α.Μ.: 941 Επικοινωνία Ανθρώπου-Μηχανής.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Εισαγωγή στο περιβάλλον εργασίας του
Advertisements

Το αλφαριθμητικό (string)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING.
Δημιουργία της πρώτης σας βάσης δεδομένων Access 2013 j και στη συνέχεια πατήστε το πλήκτρο F5 ή κάντε κλικ στις επιλογές Προβολή παρουσίασης > Από την.
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας (Γ.Π.Ε.)
Sketchpad Χρήση του λογισμικού ΕΠΙΜΟΡΦΩΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΣΤΗΝ ΧΡΗΣΗ ΚΑΙ
ΕΝΤΟΛΕΣ.
Εκπαιδευτικό υλικό Φωτογραφικές μηχανές και φωτογραφίες: Επεξεργασία φιλμ Επίπεδο γνώσεων: Προχωρημένοι χρήστες.
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Λογισμικό: Δημιουργία εφαρμογών Επίπεδο.
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 1ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 5 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 11.
Κεφάλαιο 1ο: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΕΠΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ – ΜΗΧΑΝΗΣ Εαρινό Εξάμηνο 2007 Παρουσίαση Εργαλείου Ανάπτυξης JBuilder Τσουρού Σταυρούλα, ΑΜ 708 Μαδεμλής Ιωάννης, ΑΜ 669.
Γυμνάσιο Νέας Κυδωνίας
Αγγίσταλης Κωνσταντίνος Α.Μ 739
Νήματα Οι διεργασίες έχουν τα παρακάτω συστατικά:
Γνωριμία με το Λογισμικό του Η/Υ
ΕΝΟΤΗΤΑ Γ΄ Ελέγχω – Προγραμματίζω τον Υπολογιστή
ΕΝΟΤΗΤΑ 3 – Κεφάλαιο 9: Ζωγραφική
Βάσεις Δεδομένων Μάθημα 4.
Μποχρίνη Σταυρούλα ΑΜ:3173 Σταθόπουλος Αναστάσιος ΑΜ:3220.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας (Γ.Π.Ε.)
1 Ολυμπιάδα Πληροφορικής Μάθημα 7. 2 Στόχοι μαθήματος Δημιουργία συναρτήσεων από το χρήστη Δομή προγράμματος με συναρτήσεις Συναρτήσεις και παράμετροι.
GTK - ΕΙΣΑΓΩΓΗ ΦΩΤΗΣ ΣΙΤΑΡΑΣ A.M: 1117.
Ολυμπιάδα Πληροφορικής
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING.
ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ
Για τη διδασκαλία των πολυμέσων 1/15 ΛΟΓΙΣΜΙΚΟ ΑΝΑΠΤΥΞΗΣ ΕΦΑΡΜΟΓΩΝ ΠΟΛΥΜΕΣΩΝ Ομάδα Ανάπτυξης Ομάδα Ανάπτυξης: Φίλιππος Δεληγιάννης, Παναγιώτης Κωστάκης,
ΑΝΑΠΤΥΞΗ ΤΑΞΙΝΟΜΗΤΗ ΗΛΕΚΤΡΟΝΙΚΗΣ ΑΛΛΗΛΟΓΡΑΦΙΑΣ ΜΑΛΕΖΑ ΣΟΦΙΑ ΑΕΜ:765.
Εργασία με παράθυρα.
ΕΠΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ Παρουσίαση της LessTif  Μαραγκός ΘοδωρήςΑ.Μ. 557  Καρκάνης ΗλίαςΑ.Μ. 539.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
XERTE TUTORIAL - ΣΗΜΕΙΩΣΕΙΣ ΕΡΓΑΣΤΗΡΙΟΥ ΘΜΕΛ ΣΤ. ΔΗΜΗΤΡΙΑΔΗΣ Xerte Interaction – Διάδραση Θεωρίες Μάθησης & Εκπαιδευτικό Λογισμικό Σημειώσεις Εργαστηρίου.
Εισαγωγή στη .net Visual C++
Microsoft Excel 4.6 Γραφήματα
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 5: To λογισμικό του υπολογιστή
ΕΜΠΙΣΤΕΥΤΙΚΟ. Η διανομή επιτρέπεται μόνο σε Συνεργάτες με τον όρο μη κοινοποίησης. Η Microsoft δεν παρέχει καμία εγγύηση, ρητή ή σιωπηρή. © 2012 Microsoft.
ΧΡΗΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ PERIOD04 ΓΙΑ ΤΗΝ ΕΥΡΕΣΗ ΣΥΧΝΟΤΗΤΩΝ ΑΝΑΠΑΛΣΗΣ ΠΑΛΛΟΜΕΝΩΝ ΑΣΤΕΡΩΝ Αλέξιος Λιάκος, M.Sc.
Γυμνάσιο Νέας Κυδωνίας
Τμήμα Πληροφορικής και Τηλεπικοινωνιών
Παρουσίαση Glade Νίκος Δεληγιάννης Α.Μ.: Τι είναι το Glade; Εφαρμογή για την αυτοματοποίηση της σχεδίασης ενός γραφικού περιβάλλοντος χρήστη (GUI).
Προγραμματισμός με GTK ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ «ΕΠΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ» ΑΛΕΞΑΝΔΡΟΣ Κ. ΓΙΔΑΡΑΚΟΣ
Εξομοιωτής Ψηφιακών Κυκλωμάτων
Βασικά στοιχεία της Java
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 5: Γνωριμία με το Λογισμικό
Μπόλαρη Αγγελικη(1451) Επιβλέπων Βολογιαννίδης Σταύρος ΑΤΕΙ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ Σέρρες 2013.
ΕΙΣΑΓΩΓΉ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΉ ΝΊΚΟΣ ΠΑΠΑΔΆΚΗΣ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ.
ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ ΜΕ ΤΟ ΑΒΑΚΙΟ. Μικρόκοσμοι και Αβάκιο Μέσω του περιβάλλοντος του Αβακίου κατασκευάζονται εκπαιδευτικά λογισμικά που ονομάζονται μικρόκοσμοι,
ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ 1 ο ΕΡΓΑΣΤΗΡΙΟ: WINDOWS XP ΚΑΘΗΓΗΤΗΣ: ΓΡΗΓΟΡΙΟΣ Ν. ΚΑΡΑΤΑΣΙΟΣ.
ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ 2 ο ΕΡΓΑΣΤΗΡΙΟ: Μενού,Εντολές και Παράθυρα Διαλόγου Καθηγητής: Γρηγόριος Νικ. Καρατάσιος.
ΜΑΘΗΜΑ: ΣΥΓΧΡΟΝΟ ΛΟΓΙΣΜΙΚΟ ΟΡΓΑΝΩΣΗ ΓΡΑΦΕΙΟΥ 5 ο ΕΡΓΑΣΤΗΡΙΟ: ΕΓΚΑΤΑΣΤΑΣΗ ΕΚΤΥΠΩΤΩΝ ΚΑΘΗΓΗΤΗΣ: ΓΡΗΓΟΡΙΟΣ Ν. ΚΑΡΑΤΑΣΙΟΣ.
Ασκήσεις WEKA Δέντρα αποφάσεων.
ΕΝΟΤΗΤΑ 3 – Κεφάλαιο 9: Ζωγραφική
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΧΩΡΗΜΕΝΕΣ ΤΕΧΝΙΚΕΣ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Μετονομασία Φακέλων και Αρχείων
Γνωριμία με το Λογισμικό του Υπολογιστή
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΠΡΟΧΩΡΗΜΕΝΕΣ ΤΕΧΝΙΚΕΣ
Praat Βασικές οδηγίες.
Power Point (Συνέχεια).
ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ POWERPOINT
Web Services στη C# Εργαστήριο 3
Tkinter Γραφικά στην Python.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Ανάπτυξη Εφαρμογών για Φορητές Συσκευές
Γραφικό Περιβάλλον Εργασίας H/Y
ΠΡΟΓΡΑΜΜΑ ΕΠΙΜΟΡΦΩΣΗΣ Β΄ΕΠΙΠΕΔΟ ΓΙΑ ΠΕ03
Άνοιγμα/κλείσιμο Υπολογιστή
Φόρμες Φόρμες χρησιμοποιούνται για να δημιουργήσουμε ένα φιλικό περιβάλλον για την διαχείριση των δεδομένων της βάσης. Επίσης δίνεται η δυνατότητα δημιουργίας.
ΕΝΟΤΗΤΑ 3 – Κεφάλαιο 9: Ζωγραφική
Διδάσκων: Χρήστος Κατσάνος
Μεταγράφημα παρουσίασης:

Παρουσίαση της Motif Αναστάσιος Κρυσταλλίδης Α.Μ.: 776 Δημήτρης Μπαμπαλίκης Α.Μ.: 941 Επικοινωνία Ανθρώπου-Μηχανής

Εισαγωγή (1) Η motif αποτελεί ένα εργαλείο για την ανάπτυξη γραφικού περιβάλλοντος. Πρόκειται ουσιαστικά για μία βιβλιοθήκη από ρουτίνες που χρησιμοποιούνται για την ανάπτυξη GUI σε περιβάλλον X-Windows. Ο προγραμματισμός σε Motif χρησιμοποιεί γλώσσες χαμηλού επιπέδου και στηρίζεται σε κλάσεις αντικειμένων οι οποίες περιέχουν συναρτήσεις. Για τον προγραμματισμό σε Motif απαιτείται η γνώση της γλώσσας C καθώς και του λειτουργικού συστήματος UNIX.

Εισαγωγή (2) Δημιουργήθηκε το 1980, κατά την ακμή του λειτουργικού συστήματος UNIX,από την Open Software Foundation, η οποία έχει ενταχθεί στην The Open Group, και αποτέλεσε τον κύριο ανταγωνιστή του OPEN LOOK GUI. Αποτελεί πλέον τον θεμέλιο λίθο του Common Desktop Environment. Η Motif μπορεί να χαρακτηριστεί ως ένα επεκτάσιμο user interface toolkit, μία ευσταθής εφαρμογή για προγραμματισμό interface, ένας window manager. Τα παραπάνω αποτελούν τον πυρήνα της motif και τον λόγω που είναι τόσο αποδεκτή στο κοινό.

Εισαγωγή (3) Το Motif toolkit βασίζεται στο Χ11 Intrinsics, ένα εργαλείο που παρέχεται από το X-Window System. Χρησιμοποιεί ένα αντικειμενοστραφές μοντέλο για να δημιουργήσει μία ιεραρχία από γραφικά αντικείμενα, γνωστά ως widgets. Η λειτουργικότητα του Motif toolkit επεκτείνεται από τα windowless widgets που ονομάζονται gadgets.

Widgets και Gadgets Τα widget και τα gadgets που χρησιμοποιούνται στο Motif toolkit μπορούν να θεωρηθούν ολοκληρωμένα και αυτόνομα κομμάτια κώδικα που συνδυάζονται από τον χρήστη κατά την κατασκευή της εφαρμογής. Αυτό σημαίνει ότι είναι ανεξάρτητα από την κάθε εφαρμογή, δηλαδή “γνωρίζουν” πότε να ζωγραφίσουν τον εαυτό τους, πώς να αλλάξουν φωτισμό όταν ο χρήστης τα πατά κλπ. Παρέχονται στον χρήστη widgets και gadgets όπως τα labels, pushbuttons, menus κ.α.

Manager Widgets Τα manager widgets αποτελούν μία ειδική κατηγορία widgets. Είναι πιο σύνθετα από τα widgets και περιέχουν άλλα απλούστερα. Σκοπός τους είναι ο έλεγχος της διάταξης και του μεγέθους των widgets, και αποτελούν το μέσο για την υποστήριξή τους. Επίσης τα manager widgets αποτελούν απαραίτητη προϋπόθεση για την ύπαρξη των gadgets.

Βασικά Widgets (1) ArrowButton ArrowButton : Κατασκευή παραθύρου με βέλη προς όλες τις κατευθύνσεις. : Label : Κατασκευή παραθύρου που περιέχει κείμενο ή εικόνα.

Βασικά Widgets (2) DrawnButton : DrawnButton : Κατασκευή παραθύρου που περιέχει ένα εικονίδιο. : RadioButton/CheckBox : Κατασκευή παραθύρου που περιέχει επιλογές. Δίνεται η δυνατότητα για επιλογή ενός (RadopButton) ή περισσότερων (CheckBox) πεδίων

Βασικά Widgets (3) CascadeButton : CascadeButton : Κατασκευή παραθύρου που περιέχει μενού και δίνει την δυνατότητα επιλογής.

Βασικά Manager Widgets Frame : Το απλούστερο παράδειγμα manager widget. DrawingArea : Δημιουργεί ένα παράθυρο στο οποίο μπορούν να απεικονιστούν γραφικά.

Παραδείγματα Στις διαφάνειες που ακολουθούν παρουσιάζονται παραδείγματα χρήσης της Motif. Στο πρώτο παράδειγμα δημιουργούμε ένα κουμπί, το οποίο μόλις πατηθεί εμφανίζει την πρόταση "Hello Yourself!“. Στο δεύτερο παράδειγμα δημιουργούμε μια λίστα με χρώματα, από την οποία ο χρήστης επιλέγει. Το επιλεγμένο στοιχείο της λίστας τονίζεται με διαφορετικό χρώμα.

#include #include int main(argc, argv) int argc; char *argv[]; { Widget toplevel, button; XtAppContext app; void button_pushed(); XmString label;

XtSetLanguageProc (NULL, NULL, NULL); toplevel = XtVaAppInitialize (&app, "Hello", NULL, 0, &argc, argv, NULL, NULL); label = XmStringCreateLocalized ("Push here to say hello"); button = XtVaCreateManagedWidget ("pushme", xmPushButtonWidgetClass, toplevel, XmNlabelString, label, NULL);

XmStringFree (label); XtAddCallback (button, XmNactivateCallback, button_pushed, NULL); XtRealizeWidget (toplevel); XtAppMainLoop (app); }

void button_pushed(widget, client_data, call_data) Widget widget; XtPointer client_data; XtPointer call_data; { printf ("Hello Yourself!\n"); }

Η έξοδος του προγράμματος είναι ένα παράθυρο με ένα κουμπί με ετικέτα "Push here to say hello" που όταν πατηθεί εμφανίζεται στην οθόνη το μήνυμα "Hello Yourself! “ :

Παράδειγμα 2 #include #include main(argc, argv) int argc; char *argv[]; { Widget toplevel, main_w, list_w; XtAppContext app; Pixmap pixmap; XtSetLanguageProc (NULL, NULL, NULL);

toplevel = XtVaAppInitialize (&app, "Demos", NULL, 0, &argc, argv, NULL, NULL); main_w = XtVaCreateManagedWidget ("main_window", xmMainWindowWidgetClass, toplevel, NULL); list_w = XmCreateScrolledList (main_w, "main_list", NULL, 0);

XtVaSetValues (list_w, XtVaTypedArg, XmNitems, XmRString, "Red, Green, Blue, Orange, Maroon, Grey, Black, White", 53, XmNitemCount, 8, XmNvisibleItemCount, 5, NULL); XtManageChild (list_w); /* set the list_w as the "work area" of the main window */ XtVaSetValues (main_w, XmNworkWindow, XtParent (list_w), NULL); XtRealizeWidget (toplevel); XtAppMainLoop (app); }

Το αποτέλεσμα του παραπάνω προγράμματος είναι η δημιουργία μιας λίστας με χρώματα, όπως φαίνεται παρακάτω :

Παρατηρήσεις Κάθε πρόγραμμα ανάλογα με το τι κατασκευάζουμε πρέπει να χρησιμοποιεί τις ανάλογες βιβλιοθήκες.Στο παράδειγμα 1 κάνουμε Include το αρχείο Xm/PushB.h, το οποίο είναι το κατάλληλο για την δημιουργία του PushButton. Έχουμε 2 widgets, το toplevel και το button. Το toplevel ανήκει στην κλάση shell και είναι υπεύθυνο για την επικοινωνία της εφαρμογής με τον window manager του X-window και αρχικοποιείται με την εντολή XtVaAppInitialize.

Παρατηρήσεις (2) Το button ανήκει στην κλάση PushButton και αρχικοποιείται με την εντολή XtVaCreateManagedWidget. Με την εντολή XmStringCreateLocalized αναθέτουμε ένα «όνομα» στο κουμπί που δημιουργήσαμε, και το οποίο θα αναγράφεται πάνω σε αυτό. Η XtAddCallback αντιστοιχεί στο πάτημα του κουμπιού που δημιουργήσαμε, με το ποντίκι.

Παρατηρήσεις (3) Στο παράδειγμα 2 κάνουμε include δύο αρχεία. Τα Xm/MainW.h και Xm/List.h για την δημιουργία μιας λίστας. Έχουμε 3 widget, το toplevel,το main_w και το list_w. XtVaAppInitialize, XtVaCreateManagedWidget, XmCreateScrolledList. Οι 3 αυτές εντολές αρχικοποιούν τα 3 widget αντίστοιχα με τις κατάλληλες παραμέτρους.

Παρατηρήσεις (4) XtVaSetValues. Η συνάρτηση αυτή αρχικοποιεί την λίστα μας με τα περιεχόμενα που επιθυμούμε. Ακολουθούν παραδείγματα για τις δυνατότητες της motif, χωρίς τον κώδικα τους.

Συναρτήσεις XmStringCreateLocalized : Δημιουργία ενός string σε συγκεκριμένη θέση XmVaCreateSimpleRadioButton : Δημιουργία ενός RadioButton αντικειμένου XmVaCreateSimpleMenuBar : Δημιουργία ενός MenuBar σε ένα συγκεκριμένο αντικείμενο XmPushButton : Δημιουργία ενός αντικειμένου το οποίο ξεκινά μία λειτουργία όταν είναι πατημένο

Συναρτήσεις (2) XmChangeColor : Αλλαγή του χρώματος ενός αντικειμένου XmDisplay : Δημιουργία ενός αντικειμένου που αποθηκεύει μία συγκεκριμένη πληροφορία XmTextSetHighlight : Δημιουργία highlight κειμένου XmUninstallImage : Αφαιρεί μία εικόνα από την μνήμη

Παράθυρο επιλογής Ο χρήστης επιλέγει αν θέλει να δημιουργήσει ή να διαγράψει ένα αρχείο. Για το παράθυρο αυτό χρησιμοποιούνται τα εξής αρχεία : Xm/DialogS.h Xm/DialogS.h Xm/SelectioB.h Xm/SelectioB.h Xm/RowColumn.h Xm/RowColumn.h Xm/MessageB.h Xm/MessageB.h Xm/PushB.h Xm/PushB.h

Warnings Ο χρήστης έχει επιλέξει να διαγράψει κάποια αρχεία. Το σύστημα ζητεί επιβεβαίωση για αυτήν την ενέργεια μέσω του παρακάτω παραθύρου. Για το παράθυρο αυτό χρησιμοποιούνται τα εξής αρχεία : Xm/MessageB.h Xm/MessageB.h Xm/PushB.h Xm/PushB.h

Τέλος παρουσίασης Ευχαριστούμε για την προσοχή σας