Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Οπτικός Προγραμματισμός  To Page Control ανήκει στην κλάση TPageControl. Xρησιμοποιείται σε περιπτώσεις που θέλουμε να έχουμε πολλές σελίδες με components.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Οπτικός Προγραμματισμός  To Page Control ανήκει στην κλάση TPageControl. Xρησιμοποιείται σε περιπτώσεις που θέλουμε να έχουμε πολλές σελίδες με components."— Μεταγράφημα παρουσίασης:

1 Οπτικός Προγραμματισμός  To Page Control ανήκει στην κλάση TPageControl. Xρησιμοποιείται σε περιπτώσεις που θέλουμε να έχουμε πολλές σελίδες με components μέσα σε μία φόρμα. Εφαρμόζεται κυρίως σε διαλόγους καθορισμού ιδιοτήτων (properties) που συνήθως είναι πολλές και χωρίζονται σε σελίδες.  Τρόπος χειρισμού του component : εισάγουμε στην φόρμα μας ένα Page Control που αρχικά είναι άδειο. Στη συνέχεια εισάγουμε όσες σελίδες χρειαζόμαστε κάνοντας right click στο component και επιλέγοντας “New Page”. Κάθε νέα σελίδα που εισάγουμε είναι ένα panel της κλάσης TTabSheet. Οι σελίδες παίρνουν αυτόματα τα ονόματα TabSheet1, TabSheet2 κ.λ.π. Για να αλλάξουμε τα Captions πρέπει να πάμε στην λίστα αντικειμένων του Object Inspector, να επιλέξουμε την επιθυμητή σελίδα (TabSheet) και να αλλάξουμε το “Caption”.

2 Οπτικός Προγραμματισμός  Στη συνέχεια επιλέγουμε την σελίδα που θέλουμε και εισάγουμε εκεί τα components που επιθυμούμε. Κάθε σελίδα είναι ανεξάρτητη και μπορεί να έχει τα δικά της components.  Κάθε φορά που κατά τη σχεδίαση επιλέγουμε μία σελίδα του Page Control αυτόματα καθορίζουμε και την ιδιότητα “Active Page” του Page Control δηλαδή το ποιά θα είναι η σελίδα που θα εμφανίζεται εξ’ορισμού όταν ξεκινά η εφαρμογή. Ιδιότητες (properties)  ActivePage (TTabSheet *) : καθορίζει ποιά είναι η τρέχουσα σελίδα.  PageCount (int) : επιστρέφει τον αριθμό των σελίδων του Page Control.  PageIndex (int) : επιτρέπει τον καθορισμό τρέχουσας σελίδας μέσω αύξοντα αριθμού και όχι μέσω αντικειμένου.  Pages[I] (TTabSheet *) : πίνακας με τις σελίδες του PageControl.  Canvas (TCanvas) : αντικείμενο που επιτρέπει την σχεδίαση στο client area του PageControl.

3 Οπτικός Προγραμματισμός  Images (TCustomImageList *) : επιτρέπει την φόρτωση εικόνων που θα εμφανίζονται στις επικεφαλίδες των σελίδων.  MultiLine (bool) : καθορίζει αν οι σελίδες θα είναι μόνο οριζόντιες (false) ή αν θα μπορούν να σχηματίζουν πολλαπλές γραμμές (true).  Style (tsTabs, tsButtons, tsFlatButtons) : καθορίζει τον τρόπο απεικόνισης των “tabs” των σελίδων : Style = tsButtons Style = tsFlatButtons

4 Οπτικός Προγραμματισμός  Επίσης μπορούμε να κάνουμε το “tab” μίας σελίδας να ξεχωρίζει από τις υπόλοιπες (εμφανίζεται inverse), μεταβάλλοντας την ιδιότητα “Highlighted” της συγκεκριμένης σελίδας σε true. Mέθοδοι (Methods)  FindNextPage() : μας επιστρέφει την επόμενη σελίδα (TTabSheet pointer) από την τρέχουσα. Την τρέχουσα σελίδα την δίνουμε εμείς ως παράμετρο στην ρουτίνα.  SelectNextPage() : καθιστά ενεργή την επόμενη σελίδα. Μπορεί να πάει και προς τα πίσω καθορίζοντας την παράμετρο Forward σε false.  UpdateActivePage() : επανεμφανίζει και ξανα-ζωγραφίζει την τρέχουσα σελίδα του PageControl.

5 Οπτικός Προγραμματισμός  To component αυτό μας επιτρέπει τον καθορισμό μίας ακέραιας τιμής μεταξύ δύο ορίων (άνω και κάτω όριο) με την μετακίνηση ενός δείκτη πάνω σε ένα ευθύγραμμο τμήμα. Ιδιότητες (Propeties) :  Frequency (int) : καθορίζει κάθε πόσα βήματα θα εμφανίζεται μία κάθετη γραμμή (tick mark) στον άξονα μετακίνησης.  LineSize (int) : καθορίζει πόσες μονάδες θα αυξάνει ή θα μειώνεται η θέση του ΤrackΒar όταν πατάμε τα βελάκια του κέρσορα δεξιά ή αριστερά.  Max, Min (int) : καθορίζουν το άνω και κάτω όριο μετακίνησης της θέσης του TrackBar.  Orientation (tbHorizontal, tbVertical) : καθορίζει άν το TrackBar θα είναι οριζόντιο ή κατακόρυφο.

6 Οπτικός Προγραμματισμός  Position (int) : επιστρέφει την θέση του TrackBar σαν ακέραια τιμή μεταξύ Min και Max.  SliderVisible (bool) : Εμφανίζει ή εξαφανίζει τον δείκτη (slider) που ολισθαίνει πάνω στο TrackBar.  ThumbLength (int) καθορίζει το μέγεθος του δείκτη (slider) που ολισθαίνει πάνω στο TrackBar.  TickMarks (tmBottomRight, tmTopLeft, tmBoth) : καθορίζει αν θα εμφανίζονται σημάδια κλίμακας (tick marks) από την μία πλευρά του TrackBar(και από ποιά) ή και από τις δύο πλευρές.  TickStyle (tsAuto, tsManual, tsNone) : καθορίζει αν θα εμφανίζονται αυτόματα τα σημάδια κλίμακας, αν θα εμφανίζονται χειροκίνητα (με κλήση της μεθόδου “SetTick”) ή να μην εμφανίζονται καθόλου.

7 Οπτικός Προγραμματισμός  Βρίσκεται στην παλέτα System και παράγεται από την κλάση TMediaPlayer. Χρησιμεύει για να προσδώσει δυνατότητες ήχου και video στις εφαρμογές του CΒuilder.  Όταν το ενσωματώσουμε σε μία φόρμα, εμφανίζεται ως μία μπάρα με 9 κουμπιά για play, pause, stop, rec κ.λ.π. Ο χρήστης μπορεί κατά βούληση να καθορίσει ποιά κουμπιά θα φαίνονται και ποιά όχι. Επίσης υπάρχει η δυνατότητα ο Media Player να μην φαίνεται καθόλου και απλά να χρησιμοποιούμε τις δυνατότητές του.  Για να καθορίσουμε ποιά κουμπιά θα φαίνονται και ποιά όχι επεμβαίνουμε στην ιδιότητα “EnabledButtons” που είναι ένα σύνολο (set).  Αν θέλουμε το Media Player να μην φαίνεται καθόλου πρέπει να καθορίσουμε την ιδιότητα “Visible” σε false.

8 Οπτικός Προγραμματισμός  Για να κάνουμε τον Media Player να παίξει ένα αρχείο ήχου (.wav,.mid) ή αρχείο video (.avi) : 1.Βάζουμε στην ιδιότητα “FileName” το όνομα του αρχείου 2.Καθορίζουμε την ιδιότητα “DeviceType” σε “dtAutoSelect” έτσι ώστε να επιλέγεται αυτόματα η συσκευή αναπαραγωγής ανάλογα με την επέκταση του αρχείου. 3.Καλούμε την μέθοδο Open() για να ανοίξει το αρχείο. 4.Καλούμε την μέθοδο Play() για να παίξει το αρχείο.  Επιπρόσθετα για αρχεία video :  Θα πρέπει να ενσωματώσουμε στην φόρμα και ένα “Animate” component από την παλέτα Win32.  Να συνδέσουμε τον Media Player με το Animate Component βάζοντας στην ιδιότητα “Display” του Media Player το όνομα του Animate Component.  Υπάρχουν μέθοδοι Pause(), Stop(), Back(), Next(), Rewind() κ.λ.π.

9 Οπτικός Προγραμματισμός  Παράγεται από την κλάση TTimer και είναι Non-Visual object. Παράγει ένα OnTimer event σε προκαθορισμένα ίσα διαστήματα. Επιτρέπει την κατασκευή εφαρμογών που να ρυθμίζουν την εκτέλεσή τους με τον πραγματικό χρόνο. Ιδιότητες :  Enabled (bool) : καθορίζει άν ο Timer είναι ενεργός ή όχι (άν παράγει το OnTimer event). Θέτουμε Enabled=true για εκκίνηση και Enabled=false για σταμάτημα του Timer.  Interval (int) : καθορίζει την περίοδο (σε msec) της επαναληπτικής παραγωγής του OnTimer event. Π.χ. 1000 σημαίνει κάθε 1 δευτερόλεπτο. Συμβάντα :  OnTimer : παράγεται σε τακτά διαστήματα. Εδώ γράφουμε τον κώδικα που πρέπει να εκτελείται σε συνάρτηση με τον πραγματικό χρόνο. Σε μία εφαρμογή μπορεί να υπάρχουν πολλοί Timers με διαφορετικά Intervals, για να υλοποιούν ακολουθίες ενεργειών, μάλιστα κάποια OnTimer events μπορεί να εκκινούν ή να σταματούν άλλους Timers.

10 Οπτικός Προγραμματισμός  Είναι μία εφαρμογή διαλόγου με ένα Page Control τριών σελίδων. Στην πρώτη σελίδα το κουμπί Play παίζει ένα αρχείο ήχου, και ο χρήστης μπορεί με ένα TrackBar να καθορίσει την διάρκεια του ήχου.

11 Οπτικός Προγραμματισμός  Επίσης ενσωματώνουμε ένα Media Player component στη φόρμα με Visible=false.  Σε κάθε σελίδα ενσωματώνουμε τα κατάλληλα components.  Στη δεύτερη σελίδα το κουμπί play παίζει ένα συγκεκριμένο video AVI.  Στην Τρίτη σελίδα υπάρχει ένα DateTimePicker Component μαζί με ένα UpDown component μέσω των οποίων ο χρήστης μπορεί να δώσει με πολλούς τρόπους μία ημερομηνία. Υλοποίηση :  Στην φόρμα μίας νέας εφαρμογής ενσωματώνουμε ένα PageControl και δημιουργούμε 3 σελίδες με κατάλληλα Caption στα tabs,

12 Οπτικός Προγραμματισμός void __fastcall TForm1::TrackBar1Change(TObject *Sender) { int Start,End,pos; Beep(); Edit1->Text=TrackBar1->Position; } //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn1Click(TObject *Sender) { int pos=TrackBar1->Position; MediaPlayer1->FileName="C:\\WINNT\\Media\\The Microsoft Sound.wav"; MediaPlayer1->Open(); MediaPlayer1->EndPos = MediaPlayer1->TrackLength[1] / 10 * pos; MediaPlayer1->Play(); }

13 Οπτικός Προγραμματισμός void __fastcall TForm1::BitBtn2Click(TObject *Sender) { MediaPlayer1->FileName="c:\\winnt\\clock.avi"; MediaPlayer1->Open(); MediaPlayer1->Play(); } //--------------------------------------------------------------------------- void __fastcall TForm1::UpDown1ChangingEx(TObject *Sender, bool &AllowChange, short NewValue, TUpDownDirection Direction) { if (Direction==updUp) DateTimePicker1->Date=DateTimePicker1->Date+1; else DateTimePicker1->Date=DateTimePicker1->Date-1; }

14 Οπτικός Προγραμματισμός  Είναι μία εφαρμογή που επιδεικνύει την χρήση των Timers. Περιέχει ένα RadioButton (χωρίς Caption) και ένα Timer. Για το button θέτουμε Checked=true, και για τον Timer Interval=10.  Το button κινείται σαν μπάλα στο χώρο του client area της Φόρμας και αναπηδά στα τοιχώματα αντιστρέφοντας την κίνησή του κατά ένα άξονα κάθε φορά, ανάλογα με τον τοίχο πρόσκρουσης.

15 Οπτικός Προγραμματισμός int dx=1,dy=1; void __fastcall TForm1::Timer1Timer(TObject *Sender) { RadioButton1->Top+=dy; RadioButton1->Left+=dx; if (RadioButton1->Top<1) dy=-dy; if (RadioButton1->Top+RadioButton1->Height>Form1->ClientHeight-1) dy=-dy; if (RadioButton1->Left<1) dx=-dx; if (RadioButton1->Left+RadioButton1->Width>Form1->ClientWidth-1) dx=-dx; Application->ProcessMessages(); }


Κατέβασμα ppt "Οπτικός Προγραμματισμός  To Page Control ανήκει στην κλάση TPageControl. Xρησιμοποιείται σε περιπτώσεις που θέλουμε να έχουμε πολλές σελίδες με components."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google