devxlogo

Prevent Checkbox Changes

Prevent Checkbox Changes

You’ll often want to display a checkbox-style listbox to show users the values they have selected in an underlying database. However, you don’t want to allow users to change the selections-that is, to change which boxes they checked. You can’t disable the listbox because that stops the user from scrolling the list to see which items they checked. You can’t use Locked, because the listbox doesn’t have a Locked property.

Here’s one solution: Paint a Command button with the caption “Click to toggle enabled property” and a listbox on a form, then change the listbox style to 1-Checkbox. Add this code:

 Option ExplicitDim mbDisabled As BooleanPrivate Sub Command1_Click()	mbDisabled = Not mbDisabledEnd SubPrivate Sub List1_ItemCheck(Item As Integer)	If mbDisabled Then		List1.Selected(Item) = Not List1.Selected(Item)	End IfEnd Sub

When mbDisabled is set to True, the changes made by the user to the listbox selections are immediately reversed. It will appear as if the selections haven’t changed at all, and the list is still scrollable.

See also  Does It Make Sense to Splurge on a Laptop?
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist