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: VB4,VB5,VB6
Expertise: beginner
Apr 20, 1999

Use DataChanged with unbound controls

When you need to learn if a field has been changed by the user, you have at least three options:
  1. you can use a global boolean variable and set it in the control's Change event, or
  2. you can save the original value in global variable to compare it against the current value
  3. you can use the EM_GETMODIFY message with the SendMessage API functions (only for textboxes)
There is a fourth solution that is not known to all VB programmers, and that at the same time is the simplest of them all. Differently from what the VB documentation states, the DataChanged property is perfectly functional even with unbound controls. When a form is loaded, this property is set to False, and then it is automatically set to True when the program or the user modifies the control's contents.

This means that you can spot which fields have been modified even if you are using DAO methods without a Data Control, and even if you are not using DAO or the Jet Engine at all. Remember however that it's up to you to reset the property value to False when you show a new set of values.

Francesco Balena
 
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