Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Visual Basic
Expertise: Beginner
Feb 3, 1999

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 Explicit

Dim mbDisabled As Boolean

Private Sub Command1_Click()
	mbDisabled = Not mbDisabled
End Sub

Private Sub List1_ItemCheck(Item As Integer)
	If mbDisabled Then
		List1.Selected(Item) = Not List1.Selected(Item)
	End If
End 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.
Ian Champ
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date