Ένα ProgressBar με ενισχυμένες δυνατότητες εμφάνισης όπως gradient χρώμα της
μπάρας προόδου και ενσωματωμένη δυνατότητα προβολής της ετικέτας προόδου (π.χ. με
ποσοστό 45% ή τιμής π.χ. 45/100)
|
|
|
Απλό |
Με ετικέτα (percent) |
Με ετικέτα (Value) |
Χρήστος Μουρατίδης, Μάιος 2006
Αποσυμπιέσετε με ένα πρόγραμμα συμπίεσης πχ. WinZip τα περιεχόμενα του αρχείου LightProgresBar.zip σε κάποιο φάκελο στο δίσκο. Θα δείτε να δημιουργείται ένας φάκελος με όνομα LightProgresBar Test, ο οποίος περιέχει ένα project δείγματος χρήσης του control
καθώς και το παρόν readme αρχείο. Το project παρέχει μία υποδειγματική εφαρμογή χρήσης του control.
Σκοπός του LightProgresBar είναι να παράσχει μία εναλλακτική δυνατότητα εμφάνισης μίας μπάρας προόδου με interface παρόμοιο με το τυπικό ProgressBar της VB 2005. Δηλαδή, παρέχονται οι ιδιότητες Value, Minimum, Maximum, Step (Stepping) και οι μέθοδοι Increment, PerformStep. Πέραν αυτού, υπάρχουν ιδιότητες για εμπλουτισμό της εμφάνισης της μπάρας προόδου με Solid ή Gradient χρώμα κι αν επιθυμούμε μπορούμε να εμφανίσουμε μία ετικέτα προόδου (Caption) στο μέσον της μπάρας προόδου.
· Π.χ.1 : Για να καθορίσετε Gradient χρώμα στην μπάρα προόδου χρησιμοποιείστε την ιδιότητα StyleMode και καθορίστε δύο χρώματα στις ιδιότητες GradientColor1 και GradientColor2 :
LightProgressBar1.StyleMode = StyleModeEnum.Gradient
LightProgressBar1.GradientColor1 = Color.Blue
LightProgressBar1.GradientColor2 = Color.WhiteSmoke
LightProgressBar1.GradientDirection = Drawing2D.LinearGradientMode.ForwardDiagonal
H απαρίθμηση StyleModeEnum περιέχει δύο
τιμές
: Solid και Griadient. H ιδιότητα GradientDirection
καθορίζει την κατεύθυνση της διαβάθμισης.
· Π.χ.2 Για να ορίσετε Solid χρώμα στην μπάρα προόδου χρησιμοποιείστε την ιδιότητα StyleMode και καθορίστε το χρώμα στην ιδιότητα GradientColor1:
LightProgressBar1.StyleMode = StyleModeEnum.Solid
LightProgressBar1.GradientColor1 = Color.Blue
Στην περίπτωση αυτή η ιδιότητα GradientColor2 θα αγνοηθεί.
·
Πχ 3. Για να θέσουμε την κατώτατη τιμή και ανώτατη
τιμή θέτουμε τις ιδιότητες Minimum και
Maximum, αντίστοιχα : :
LightProgressBar1.Minimum = 0
LightProgressBar1.Maximum = 100
· Πχ.4. Για να θέσουμε την τρέχουσα τιμή στην μπάρα προόδου κάνουμε χρήση της ιδιότητας Value :
LightProgressBar1.Value = 40
Αυτομάτως η μπάρα θα προωθηθεί στην κατάλληλη θέση και θα ενημερωθεί το Caption, αν έχουμε ορίσει να εμφανίζεται.
· Πχ.5 : Αν επιθυμούμε η μπάρα να προωθείται κατά ένα σταθερό βήμα θέτουμε την ιδιότητα Stepping :
LightProgressBar1.Stepping =
10
Στην περίπτωση αυτή, κάποια στιγμή θα καλέσουμε τη μέθοδο PerformStep οπότε η μπάρα προόδου θα προωθηθεί κατά την τιμή Stepping.
· Π.χ 6 : Αν επιθυμούμε να προωθήσουμε την μπάρα προόδου κατά μία συγκεκριμένη τιμή τότε καλούμε τη μέθοδο Increment περνώντας ως παράμετρο το βήμα αύξησης :
LightProgressBar1.Increment(20)
· Π.χ 7 : Αν θέλουμε να εμφανίζεται η ετικέτα προόδου, καθορίζουμε την ιδιότητα CaptionVisible και την ιδιότητα CaptionMode :
LightProgressBar1.CaptionVisible = True
LightProgressBar1.CaptionMode = CaptionModeEnum.Percent
Μπορούμε επίσης να καθορίσουμε το Font, ForeColor και BackColor του Caption.
Δείτε την εφαρμογή επίδειξης που περιέχει αρκετά σχόλια ως τεκμηρίωση.
Παρακάτω παρουσιάζονται οι ιδιότητες, μέθοδοι και τα γεγονότα του control :
1) Value : H τρέχουσα τιμή.
2) Minimum : Η κατώτατη τιμή.
3) Maximum : Η ανώτατη τιμή.
4) Stepping : Το βήμα αύξησης (συνδυάζεται με τη μέθοδο PerformStep). Μπορεί να είναι και αρνητικό.
5) StyleMode : Το στυλ της μπάρας
προόδου. Solid ή Gradient. Παίρνει τιμή από την απαρίθμηση StyleModeEnum
6)
GradientColor1 : To πρώτο χρώμα Gradient.
7) GradientColor2 : To δεύτερο χρώμα Gradient.
8) GradientDirection : Η κατεύθυνση του Gradient.
9) CaptionVisible : Καθορίζουμε αν θα εμφανίζεται ή όχι η ετικέτα προόδου.
10)CaptionMode : Η μορφή της ετικέτας προόδου. Παίρνει τιμές
από την απαρίθμηση CaptionModeEnum.
11)BackColorCaption : To BackColor της ετικέτας προόδου. Συνήθως, το ίδιο με του control.
1.
PerformStep : Προωθεί τη
μπάρα προόδου κατά την τιμή Stepping.
2.
Increment : Προωθεί τη μπάρα προόδου κατά
μία συγκεκριμένη τιμή.
1) StyleModeEnum : Μία απαρίθμηση (Enum) για το mode εμφάνισης της μπάρας προόδου.
Δύο τιμές :
Solid : Συμπαγές, ένα χρώμα.
Gradient
: Διαβάθμισης, δύο χρωμάτων.
2)
CaptionModeEnum : Απαρίθμηση για τη μορφή της ετικέτας προόδου. Τρεις τιμές :
Value : Μορφή Value/Maximum.
Percent : Μορφή ποσοστού.
Both : Και τα δύο.
Προσθέστε στο ToolBox της VB 2005 το LightProgressBar control και χρησιμοποιήστε το ελεύθερα στις εφαρμογές σας. Το assembly αρχείο LightProgressBar.dll θα το βρείτε στο φάκελο bin/Release.
Αν στα References του project δείγματος χρήσης εμφανίζει με κίτρινα θαυμαστικά τo LightProgressBar
control τότε πρέπει να
ενημερώσετε τα Reference Path του project ώστε να
ψάχνει στο φάκελο που έχετε βάλει τα dll των controls.
1) Στο Solution Explorer κάντε δεξί κλικ στο prοject και επιλέξτε Properties.
2) Στο παράθυρο ιδιοτήτων του project που ανοίγει,
πηγαίνετε στο τμήμα References.
3) Επιλέξτε το LightProgressBar και πατήστε το
Remove button.
4) Κατόπιν, πατήστε το Add button και
διαλέξτε Reference...
5) Επιλέξτε την καρτέλα Browse για να βρείτε το Folder όπου βρίσκεται το καθένα assembly dll
των controls στον δικό
σας υπολογιστή.
6) Σώστε το project, κλείστε το και ξανανοίξτε το.
Τώρα, πρέπει να εμφανίζονται όλα κανονικά.
Εναλλακτικά, και πιο ανώδυνα κάντε το εξής :
Ανοίξτε το αρχείο LightProgressBar Test.vbproj με τo WordPad. Βρείτε τις παρακάτω
γραμμές που αναφέρονται στα References του project
:
……………………..
<ItemGroup>
<Reference Include="LightProgressBar, Version=
1.0.2331.12724, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>E:\VB NET 05 Projects\
LightProgressBar \ LightProgressBar \bin\Release\ LightProgressBar.dll</HintPath>
</Reference>
Διορθώστε τα paths που
φαίνονται με τα βέλη ώστε να ανταποκρίνονται σε αυτά, όπου έχετε βάλει τα
σχετικά dll
των controls, στο δικό
σας Η/Υ.
Για οποιεσδήποτε παρατηρήσεις στείλτε e-mail στην παρακάτω διεύθυνση.
mouratx@yahoo.com
Χρήστος Μουρατίδης