ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 9 η : Αντικείμενα για επιλογή τιμής (CheckBox, RadioButton) & το αντικείμενο ομαδοποίησης GroupBox Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής
Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2
Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3
Σκοποί ενότητας Στην συγκεκριμένη ενότητα παρουσιάζονται αντικείμενα γραφικής διασύνδεσης με το χρήστη για επιλογή τιμής όπως είναι τα CheckBox και RadioButton καθώς και το αντικείμενο ομαδοποίησης GroupBox της Γλώσσας Προγραμματισμού Visual Basic.NET. 4
Περιεχόμενα Αντικείμενα για επιλογή τιμής Το αντικείμενο CheckBox Το αντικείμενο RadioButton Το αντικείμενο ομαδοποίησης GroupBox 5
Αντικείμενα για επιλογή τιμής Επιτρέπουν στο χρήστη τη δυνατότητα επιλογής μιας τιμής από ένα σύνολο τιμών CheckBox: Συνήθως χρησιμοποιείται για επιλογές όπως Ναι/Οχι, True/False. Γενικά μπορεί να χρησιμοποιηθεί και για ένα οποιοδήποτε σύνολο επιλογών από τις οποίες μπορεί να προκύψει ένας οποιοσδήποτε συνδυασμός πχ Χρώμα Άσπρο + Μέγεθος Μικρό + Τιμή Φθηνό RadioButton: Παρόμοια συμπεριφορά με το προηγούμενο. Η διαφορά τους βρίσκεται στο ότι όταν έχουμε πολλά αντικείμενα CheckBox μπορεί να επιλεγούν ταυτόχρονα σε αντίθεση με τα αντικείμενα RadioButton που η επιλογή ενός αποκλείει όλα τα άλλα 6
CheckBox (1) Με τα αντικείμενα CheckBox ο χρήστης έχει τη δυνατότητα να επιλέξει από μια λίστα επιλογών χωρίς η επιλογή ενός να αναιρεί την επιλογή των άλλων όπως συμβαίνει με το RadioButton Με την ιδιότητα Checked μπορούμε να ελέγξουμε αν το αντικείμενο έχει επιλεγεί ή όχι (τιμές true ή false) 7
CheckBox (2) Επίσης, και με την ιδιότητα CheckedState ελέγχουμε την κατάσταση του αντικειμένου (επιστρέφει Checked ή Unchecked ανάλογα με το αν έχει επιλεγεί ή όχι το συγκεκριμένο CheckBox) Με την ιδιότητα Appearance καθορίζουμε αν το αντικείμενο θα φαίνεται όπως ένα κλασικό checkbox ή ως ένα πλήκτρο διαταγής (button) 8
CheckBox (3) Το αντικείμενο CheckBox αντιδρά σε μια πληθώρα συμβάντων. Τα πιο πολυχρησιμοποιούμενα είναι το CheckedChanged και το Click. Το CheckedChanged συμβάν ενεργοποιείται κάθε φορά που αλλάζει τιμή το CheckBox Με το γνωστό Click συμβάν μπορούμε να προγραμματίσουμε την εφαρμογή μας να κάνει μια ενέργεια κάθε φορά που ο χρήστης κάνει Κλικ με το ποντίκι του. 9
CheckBox (4) Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged If CheckBox1.Checked Then TextBox1.Text = CheckBox1.Text Else TextBox1.Text = "" Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox2.CheckedChanged If CheckBox2.Checked Then TextBox1.Text = CheckBox2.Text Else TextBox1.Text = "" Private Sub CheckBox3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox3.CheckedChanged If CheckBox3.Checked Then TextBox1.Text = CheckBox3.Text Else TextBox1.Text = "" Private Sub CheckBox4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox4.CheckedChanged If CheckBox4.Checked Then TextBox1.Text = CheckBox4.Text Else TextBox1.Text = "" Private Sub CheckBox5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox5.CheckedChanged If CheckBox5.Checked Then TextBox1.Text = CheckBox5.Text Else TextBox1.Text = "" 10
RadioButton (1) Με τα αντικείμενα RadioButton ο χρήστης έχει τη δυνατότητα να κάνει ΜΙΑ επιλογή από μια λίστα επιλογών. Δηλαδή κάθε επιλογή αναιρεί όλες τις άλλες Στη διπλανή εικόνα έχουμε αντικείμενα RadioButton που ανήκουν σε 3 ομάδες (αντικείμενα GroupBox) (για το αντικείμενο GroupBox βλέπε τελευταίες διαφάνειες) 11
RadioButton (2) Με την ιδιότητα Checked μπορούμε να ελέγξουμε αν το αντικείμενο έχει επιλεγεί ή όχι Με την ιδιότητα Appearance καθορίζουμε αν το αντικείμενο θα φαίνεται όπως ένα κλασικό radiobutton ή ως ένα πλήκτρο διαταγής (button) 12
RadioButton (3) Private Sub RadioButton1_CheckedChanged( ) Handles RadioButton1.CheckedChanged If RadioButton1.Checked Then Label1.ForeColor = Color.Black Private Sub RadioButton2_CheckedChanged( ) Handles RadioButton2.CheckedChanged If RadioButton2.Checked Then Label1.ForeColor = Color.Blue Private Sub RadioButton3_CheckedChanged( ) Handles RadioButton3.CheckedChanged If RadioButton3.Checked Then Label1.ForeColor = Color.Red Private Sub RadioButton4_CheckedChanged( ) Handles RadioButton4.CheckedChanged If RadioButton4.Checked Then Label1.Font = New Font(Label1.Font.Name, 10) Private Sub RadioButton5_CheckedChanged( ) Handles RadioButton5.CheckedChanged If RadioButton5.Checked Then Label1.Font = New Font(Label1.Font.Name, 20) Private Sub RadioButton6_CheckedChanged( ) Handles RadioButton6.CheckedChanged If RadioButton6.Checked Then Label1.Font = New Font(Label1.Font.Name, 30) Private Sub RadioButton7_CheckedChanged( ) Handles RadioButton7.CheckedChanged If RadioButton7.Checked Then Label1.Font = New Font(Label1.Font.Name, Label1.Font.Size, FontStyle.Bold) Private Sub RadioButton8_CheckedChanged( ) Handles RadioButton8.CheckedChanged If RadioButton8.Checked Then Label1.Font = New Font(Label1.Font.Name, Label1.Font.Size, FontStyle.Italic) Private Sub RadioButton9_CheckedChanged( ) Handles RadioButton9.CheckedChanged If RadioButton9.Checked Then Label1.Font = New Font(Label1.Font.Name, Label1.Font.Size, FontStyle.Underline) GroupBox 13
Το αντικείμενο ομαδοποίησης GroupBox (1) Επιτρέπει στο χρήστη να ομαδοποιήσει αντικείμενα μέσα σε μια φόρμα (βλ. προηγούμενη διαφάνεια) που είναι πολύπλοκη (περιέχει πολλά αντικείμενα) με σκοπό να την κάνει πιο λειτουργική αλλά και πιο εύχρηστη για τον τελικό χρήστη Το αντικείμενο GroupBox παρέχει ένα πλαίσιο που οριοθετεί τα αντικείμενα που περιέχονται μέσα σαυτό, έναν τίτλο που βάζει ο σχεδιαστής της φόρμας καθώς και ένα σύνολο ρυθμίσεων για την εμφάνισή του. GroupBox (περιέχει αντικείμενα τύπου RadioButton ) 14
Το αντικείμενο ομαδοποίησης Μια ενδιαφέρουσα χρήση του αντικειμένου GroupBox προέρχεται από την ιδιότητα «Enabled». Αν δώσουμε την τιμή false αυτό συνεπάγεται την απενεργοποίηση (Enabled=false) και όλων των αντικειμένων που περιέχει το GroupBox. Συνεπώς με μια ρύθμιση μπορούμε να ενεργοποιήσουμε/απενεργοποιή σουμε ομάδες αντικειμένων μέσα σε μια φόρμα. GroupBox (3) 15
Το αντικείμενο ομαδοποίησης GroupBox (4) Επίσης, το αντικείμενο GroupBox μπορεί μέσα από την ιδιότητα «Controls» να μας δώσει αναφορές σε όλα τα αντικείμενα που περιέχει (η ιδιότητα controls αποτελεί αντικείμενο τύπου Collection που το παρουσιάζουμε σε επόμενη ενότητα). Με αυτόν τον τρόπο μπορούμε να κάνουμε αλλαγές/ρυθμίσεις (πχ να αλλάξουμε τη γραμματοσειρά) μόνο στα αντικείμενα αυτά χωρίς να επηρεάσουμε τα υπόλοιπα αντικείμενα της φόρμας 16
Τέλος Ενότητας