Lesson 21: Mastering Checkbox Controls in VB2022
Learn to create interactive interfaces with checkbox controls for multiple selections and user preferences
Key Takeaway
Checkbox controls allow users to make multiple selections from a set of options. They're essential for creating interactive forms, settings panels, and any interface where users need to select multiple items.
Welcome to Lesson 21 of our Visual Basic 2022 Tutorial! In this lesson, you'll learn how to effectively use checkbox controls in your VB2022 applications. Checkboxes are essential UI elements that allow users to select one or more options from a set of choices.
21.1 Introduction to Checkbox Controls
Checkbox controls are used when you want users to be able to select multiple options simultaneously. They differ from radio buttons which only allow single selections.
Common Use Cases
Checkboxes are ideal for:
Application | Example |
---|---|
Shopping Carts | Selecting multiple items to purchase |
Settings Panels | Enabling/disabling features |
Forms & Surveys | Selecting multiple answers |
To-Do Lists | Marking completed items |
Subscription Forms | Choosing categories of interest |
Design Tip
Group related checkboxes visually using GroupBox or Panel containers to improve usability and organization.
Key Properties
Essential checkbox properties to know:
Property | Description |
---|---|
Checked | Determines if checkbox is selected (True/False) |
Text | The label displayed next to the checkbox |
AutoCheck | Automatically changes state when clicked |
ThreeState | Allows indeterminate state (checked, unchecked, indeterminate) |
CheckState | Gets or sets the state of the checkbox |
' Create a new checkbox dynamically Dim chkNew As New CheckBox() chkNew.Text = "Enable Feature" chkNew.AutoSize = True chkNew.Location = New Point(20, 50) Me.Controls.Add(chkNew)
21.2 Practical Checkbox Examples
Let's explore practical implementations of checkbox controls in VB2022 applications.
Example 21.1: Shopping Cart
A shopping cart application where users select items with checkboxes and see the total cost.
Private Sub BtnCal_Click(sender As Object, e As EventArgs) Handles BtnCal.Click ' Define item prices Const LX As Integer = 100 Const BN As Integer = 500 Const SD As Integer = 200 Dim sum As Integer = 0 ' Check each checkbox and add price if checked If CheckBox1.Checked Then sum += LX If CheckBox2.Checked Then sum += BN If CheckBox3.Checked Then sum += SD ' Display total as currency LblTotal.Text = sum.ToString("c") End Sub

Example 21.2: Text Formatting
Dynamic text formatting using checkboxes for bold, italic, and underline options.
Private Sub ChkBold_CheckedChanged(sender As Object, e As EventArgs) Handles ChkBold.CheckedChanged If ChkBold.Checked Then LblDisplay.Font = New Font(LblDisplay.Font, LblDisplay.Font.Style Or FontStyle.Bold) Else LblDisplay.Font = New Font(LblDisplay.Font, LblDisplay.Font.Style And Not FontStyle.Bold) End If End Sub Private Sub ChkItalic_CheckedChanged(sender As Object, e As EventArgs) Handles ChkItalic.CheckedChanged If ChkItalic.Checked Then LblDisplay.Font = New Font(LblDisplay.Font, LblDisplay.Font.Style Or FontStyle.Italic) Else LblDisplay.Font = New Font(LblDisplay.Font, LblDisplay.Font.Style And Not FontStyle.Italic) End If End Sub

Example 21.3: To-Do List
A dynamic to-do list application with checkboxes for task completion.
Private Sub BtnAdd_Click(sender As Object, e As EventArgs) Handles BtnAdd.Click If Not String.IsNullOrEmpty(TxtTask.Text) Then Dim newCheckbox As New CheckBox() newCheckbox.Text = TxtTask.Text newCheckbox.AutoSize = True newCheckbox.Font = New Font("Segoe UI", 10) ' Add completed style handler AddHandler newCheckbox.CheckedChanged, AddressOf Task_CheckedChanged ' Add to flow layout panel FlowLayoutPanel1.Controls.Add(newCheckbox) TxtTask.Clear() End If End Sub Private Sub Task_CheckedChanged(sender As Object, e EventArgs) Dim taskCheckbox As CheckBox = CType(sender, CheckBox) If taskCheckbox.Checked Then ' Apply strike-through for completed tasks taskCheckbox.Font = New Font(taskCheckbox.Font, FontStyle.Strikeout) taskCheckbox.ForeColor = Color.Gray Else ' Revert to normal style taskCheckbox.Font = New Font(taskCheckbox.Font, FontStyle.Regular) taskCheckbox.ForeColor = Color.Black End If End Sub
Example 21.4: Subscription Form
A newsletter subscription form with category selection using checkboxes.
Private Sub BtnSubscribe_Click(sender As Object, e As EventArgs) Handles BtnSubscribe.Click Dim message As String = "Subscription Details:" & Environment.NewLine message &= "Email: " & TxtEmail.Text & Environment.NewLine ' Add selected categories Dim categories As New List(Of String)() If ChkNews.Checked Then categories.Add("News") If ChkTech.Checked Then categories.Add("Technology") message &= "Categories: " & String.Join(", ", categories) MessageBox.Show(message, "Subscription Confirmation") End Sub
Checkbox Control Summary
Checkboxes are versatile controls that enable multiple selections in VB2022 applications:
Feature | Description | Implementation |
---|---|---|
Checked Property | Determines if checkbox is selected | If CheckBox1.Checked Then ... |
CheckedChanged Event | Triggered when state changes | Handles CheckBox1.CheckedChanged |
Dynamic Creation | Create checkboxes at runtime | Dim chk As New CheckBox() |
Grouping | Organize related options | Use GroupBox or Panel containers |
Three-State | Support indeterminate state | chk.ThreeState = True |
Visual Feedback | Change appearance based on state | Modify Font, ForeColor properties |
User Experience
Provide immediate feedback when checkboxes are toggled to enhance usability
Accessibility
Ensure checkboxes have clear labels and sufficient size for touch interfaces
Performance
For forms with many checkboxes, use efficient event handling and control management
Practical Exercises
Apply your checkbox knowledge with these hands-on exercises:
Exercise 1: Pizza Ordering System
Create a pizza ordering form with checkboxes for toppings (pepperoni, mushrooms, onions, etc.). Calculate and display the total cost based on selected toppings, where each topping adds $1.50 to the base price of $10.
Exercise 2: Survey Form
Design a survey form with multiple checkbox questions. When the user submits the form, display a summary of all selected options. Include at least three questions with multiple possible answers each.
Exercise 3: Settings Panel
Create an application settings panel with checkboxes for various options (e.g., "Show toolbar", "Enable sounds", "Auto-save changes"). Implement an "Apply" button that shows a message with the current settings configuration.
Exercise 4: Dynamic Checkbox Creation
Build an application that generates checkboxes based on items in a text file. Include a button to read a list of items from a file and create corresponding checkboxes. Add a "Select All" checkbox that toggles all generated checkboxes.
Next Lesson
Ready to learn about radio buttons? Continue to Lesson 22: Working with RadioButton Controls.
Related Resources

Visual Basic 2022 Made Easy
The ultimate beginner-friendly guide for mastering Windows-based application development using Visual Basic in Visual Studio 2022. Whether you're a student, teacher, hobbyist, or self-learner, this book offers a clear, step-by-step approach to help you get started with ease.
What You'll Learn:
- Control structures and procedures
- Decision-making techniques
- Efficient code organization
- Practical application development
- Best practices in VB2022

Mastering Excel VBA 365
Your ultimate step-by-step guide to automating tasks, building macros, and creating powerful applications within Microsoft Excel 365. Whether you're a student, business professional, or aspiring programmer, this comprehensive handbook will help you unlock the full potential of Excel's VBA.
What You'll Learn:
- Control structures in VBA
- Decision-making techniques
- Data processing and analysis
- Report generation
- Automated workflows