How to Limit User Input in VB Combo Box with SendMessage APILast reviewed: June 21, 1995Article ID: Q72677 |
The information in this article applies to:
- Standard and Professional Editions of Microsoft Visual Basic for Windows, versions 2.0 and 3.0- Microsoft Visual Basic programming system for Windows, version 1.0
SUMMARYYou can specify a limit to the amount of text that can be entered into a combo box by calling SendMessage (a Windows API function) with the EM_LIMITTEXT constant.
MORE INFORMATIONThe following method can be used to limit the length of a string entered into a combo box. Check the length of a string inside a KeyPress event for the control, if the length is over a specified amount, then the formal argument parameter KeyAscii will be set to zero. Or, the preferred method of performing this type of functionality is to use the SendMessage API function call. After you set the focus to the desired edit control, you must send a message to the window's message queue that will reset the text limit for the control. The argument EM_LIMITTEXT, as the second parameter to SendMessage, will set the desired text limit based on the value specified by the third arguments. The SendMessage function requires the following parameters for setting the text limit:
SendMessage (hWnd%,EM_LIMITTEXT, wParam%, lParam) wParam% Specifies the maximum number of bytes that can be entered. If the user attempts to enter more characters, the edit control beeps and does not accept the characters. If the wParam parameter is zero, no limit is imposed on the size of the text (until no more memory is available). lParam Is not used.The following steps can be used to implement this method:
|
Additional reference words: 1.00 2.00 3.00
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |