Οπτικός Προγραμματισμός Περιέχει έτοιμα components υλοποίησης κοινών διαλόγων OpenDialog : διάλογος για την επιλογή αρχείου για άνοιγμα. SaveDialog : διάλογος για επιλογή ονόματος αρχείου για αποθήκευση. OpenPictureDialog : μας διευκολύνει στην επιλογή αρχείου εικόνας για άνοιγμα. SavePictureDialog : για αποθήκευση αρχείου εικόνας FontDialog : για επιλογή γραμματοσειράς, εφφέ (Bold, Italic, Underline), μεγέθους, χρώματος. ColorDialog : διάλογος για επιλογή χρώματος. PrintDialog : διάλογος εκτύπωσης (καθορισμός εκτυπωτή κ.λ.π.) PrintSetupDialog : καθορισμός παραμέτρων εκτύπωσης. FindDialog : Διάλογος αναζήτησης λέξης σε κείμενο. ReplaceDialog : Διάλογος εύρεσης και αντικατάστασης λέξης σε κείμενο
Οπτικός Προγραμματισμός Παράγεται από την κλάση TOpenDialog. Δεν φαίνεται κατά τη σχεδίαση ούτε εμφανίζεται εξ’ αρχής κατά την εκτέλεση. Εμφανίζεται όταν εκτελεστεί η μέθοδος Execute() η οποία επιστρέφει τιμή bool : Αν πατηθεί το Open επιστρέφει true. Αν πατηθεί το Cancel επιστρέφει false.
Οπτικός Προγραμματισμός Αποτελεί Modal Dialog. Τίποτα άλλο δεν λειτουργεί έως ότου κλείσει. Αν ο χρήστης πατήσει Open ο διάλογος τερματίζει και αποθηκεύει το όνομα του αρχείου που επιλέχθηκε στην ιδιότητα Filename. Π.χ. : AnsiString fn; if (OpenDialog1->Execute()) { fn=OpenDialog1->Filename;...} else {MessageBox(NULL,“No File Selected !”,””,MB_OK); } Ιδιότητες (properties) : Default Extension : (AnsiString) καθορίζει μία εξ’ορισμού επέκταση που θα προστίθεται αυτόματα στο όνομα αρχείου που πληκτρολογούμε. Filename : (AnsiString) το πλήρες μονοπάτι του αρχείου που επιλέχθηκε. Filter : (AnsiSring) φίλτρα επιλογής αρχείων. Καθορίζονται στη σχεδίαση μέσω του Filter Editor. Σε run-time μπορούμε να του αναθέσουμε ένα string της μορφής : OpenDialog1->Filter=“Text files (*.txt)|*.TXT|C files (*.c)|*.c";
Οπτικός Προγραμματισμός Filter Index : (int) καθορίζει ποιό από τα καθορισμένα φίλτρα θα εμφανιστεί εξ’ορισμού. InitialDir : (AnsiString) ο αρχικός κατάλογος των οποίων τα περιεχόμενα θα φαίνονται εξ’αρχής. Options : πολλές επιλογές true false για διάφορες παραμέτρους του OpenDialog.
Οπτικός Προγραμματισμός ofReadOnly : επιλέγει το checkbox «Open as readonly». ofHideReadOnly : εμφανίζει ή όχι την επιλογή «Open as readonly». ofNoChangeDir : επαναφέρει τον τρέχοντα κατάλογο στην αρχική τιμή. ofAllowMultiSelect : επιτρέπει την επιλογή πολλαπλών αρχείων. ofPathMustExist : βγάζει μήνυμα λάθους αν ο κατάλογος δεν υπάρχει. ofFileMustExist : βγάζει μήνυμα λάθους αν το αρχείο δεν υπάρχει. ofNoLongNames : εμφανίζει ονόματα αρχείων σε μορφή 8.3 ofOldStyleDialog : εμφανίζει τον διάλογο με το παλιό στύλ.
Οπτικός Προγραμματισμός Title : (AnsiString) ο τίτλος που θα εμφανίζεται στο επάνω μέρος του παραθύρου του διαλόγου. Files : (Tstrings*) περιέχει τα ονόματα των πολλαπλών αρχείων που επιλέχθηκαν (ofAllowMultiSelect=true). Η πρώτη εγγραφή στον πίνακα Files συμπίπτει με την ιδιότητα Filename. OpenDialog1->Files.Count : αριθμός επιλεγέντων αρχείων. OpenDialog1->Files.Strings[n] : το n-οστό όνομα αρχείου. Μέθοδοι (Methods) Execute() : εκτελεί τον διάλογο και επιστρέφει true(Open)/false(Cancel) GetStaticRect() : επιστρέφει τις θέσεις των controls ή τον χώρο του client area ανάλογα με τα windows.
Οπτικός Προγραμματισμός Συμβάντα (Events) OnCanClose() : εισάγουμε κώδικα για έλεγχο του FileName. Επιστρέφοντας false ο διάλογος δεν κλείνει. OnClose() : εκτελείται όταν ο διάλογος κλείνει. OnFolderChange() : εκτελείται όταν αλλάζουμε κατάλογο. OnSelectionChange() : συμβαίνει όταν αλλάζουμε την επιλογή μας ή την λίστα αρχείων που εμφανίζονται. OnShow() : συμβαίνει όταν εμφανίζεται ο Διάλογος. OnTypeChange() : συμβαίνει όταν ο χρήστης επιλέγει νέο φίλτρο αρχείων.
Οπτικός Προγραμματισμός Παράγεται από την κλάση TSaveDialog. Είναι παρόμοιος με τον OpenDialog, έχοντας τις ίδιες ιδιότητες, μεθόδους και συμβάντα. Εμφανίζεται όταν εκτελεστεί η μέθοδος Execute() η οποία επιστρέφει αποτέλεσμα τύπου bool. Αν πατηθεί το Save επιστρέφει true. Αν πατηθεί το Cancel επιστρέφει false.
Οπτικός Προγραμματισμός Παράγεται από την κλάση TOpenPictureDialog. Είναι παρόμοιος με τον OpenDialog, αλλά περιλαμβάνει και μία περιοχή για προεπισκόπιση των αρχείων εικόνων. Οι τύποι αρχείων εικόνων που υποστηρίζονται για προεπισκόπιση είναι bmp, ico, wmf (windows metafile), emf (enhanced windows metafile). Για άλλου είδους εικόνες εμφανίζει το μήνυμα “(None)”. Περιλαμβάνει πλήκτρο προεπισκόπισης σε κανονικό μέγεθος. Η εμφάνιση της εικόνας γίνεται με component TPicture.
Οπτικός Προγραμματισμός Παράγεται από την κλάση TSavePictureDialog. Είναι παρόμοιος με τον TOpenPictureDialog, αλλά και με τον TSaveDialog. Έχει τις ίδιες ιδιότητες, μεθόδους και συμβάντα.
Οπτικός Προγραμματισμός Ιδιότητες (Properties) Device : (fdScreen, fdPrinter, fdBoth) καθορίζει την συσκευή για την οποία θα ανακαλέσει την λίστα με τα διαθέσιμα fonts. Παράγεται από την κλάση TFontDialog. Επιτρέπει στον χρήστη την επιλογή font, style, size, color και script language. Όταν πατηθεί το OK η επιλογή του χρήστη καταχωρείται στην ιδιότητα Font.
Οπτικός Προγραμματισμός Ιδιότητες (Properties) Font : (TFont*) object που περιλαμβάνει τις ρυθμίσεις του χρήστη για το font. Charset, Color, Height, Name, Pitch(fpDefault, fpFixed, fpVariable), Size, Style(Bold, Italic, Underline, Strikeout). MaxFontSize : (int) καθορίζει ένα μέγιστο επιτρεπόμενο μέγεθος χαρακτήρων. Το 0 σημαίνει κανένα άνω όριο. MinFontSize : (int) καθορίζει ένα ελάχιστο επιτρεπόμενο μέγεθος χαρακτήρων. Το 0 σημαίνει κανένα κάτω όριο. Options : πολλές επιλογές true false για διάφορες παραμέτρους του FontDialog.
Οπτικός Προγραμματισμός fdAnsiOnly : εμφανίζει fonts με σετ χαρακτήρων Windows, όχι τα symbol. fdTrueTypeOnly : εμφανίζει μόνο true type. fdEffects : εμφανίζει τα checkbox Strikeout και Underline, καθώς και το χρώμα. fdNoFaceSel : Ο διάλογος ξεκινά χωρίς επιλεγμένο font. fdNoSizeSel : Ο διάλογος ξεκινά χωρίς επιλεγμένο size. fdNoStyleSel : Ο διάλογος ξεκινά χωρίς επιλεγμένο style(regular, bold, italic). fdWysiwyg : (what you see is what you get) εμφανίζει μόνο τα fonts που είναι και για οθόνη και για εκτυπωτή. fdApplyButton : εμφανίζει ένα κουμπί Apply και ενεργοποιεί το event OnApply.
Οπτικός Προγραμματισμός Μέθοδοι (Methods) Execute() : με ΟΚ επιστρέφει true και με Cancel επιστρέφει false. Συμβάντα (Events) OnApply() : συμβαίνει όταν ο χρήστης πατήσει το πλήκτρο “Apply”. OnShow() : συμβαίνει όταν εμφανίζεται ο διάλογος. OnClose() : συμβαίνει όταν κλείνει ο διάλογος.