This lesson concentrates on Visual Basic controls and the ways of creating
and implementing the. It also helps us to understand the concept of Control Arrays.
Controls are used to recieve user input and display output and has its own set
of properties, methods and events. Let us discuss few of these controls in this
lesson.
Creating and Using Controls
A control is an object that can be drawn on a Form object to enable or enhance
user interaction with an application. Controls have properties that define aspects
their appearance, such as position, size and colour, and aspects of their behavior,
such as their response to the user input. They can respond to events initiated
by the user or set off by the system. For instance, a code could be written in
a CommandButton control's click event procedure that would load a file or display
a result.
In addition to properties and events, methods can also be used to manipulate
controls from code. For instance, the move method can be used with some controls
to change their location and size.
Most of the controls provide choices to users that can be in the form of OptionButton
or CheckBox controls, ListBox entries or ScrollBars to select a value. Let us
discuss these controls by means of a few simple applications in the following
lessons.
Classification of Controls
Visual Basic cojntrols are broadly classified as standard controls, ActiveX
controls and insertable objects. Standard controls such as CommandButton, Label
and Frame controls are contained inside .EXE file and are always included in the
ToolBox which cannot be removed. ActiveX controls exist as separate files with
either .VBX or .OCX extension. They include specialized controls such as;
- MSChart control
- The Communications control
- The Animation control
- The ListView control
- An ImageList control
- The Multimedia control
- The Internet Transfer control
- The WinSock control
- The TreeView control
- The SysInfo control
- The Picture Clip control
Some of these objects support OLE automation, which allow programming another
application's object from within Visual Basic application.
I would like to stress that knowing how and when to set the objects' properties
is very important as it can help you to write a good program or you may fail to
write a good program. So, I advice you to spend a lot of time playing with the
objects' properties
Here are some important points about setting up the properties
-
You should set the Caption Property of a control clearly so that a user knows
what to do with that command. For example, in the calculator program, all the
captions of the command buttons such as +, - , MC, MR are commonly found in an
ordinary calculator, a user should have no problem in manipulating the buttons.
-
A lot of programmers like to use a meaningful name for the Name Property may
be because it is easier for them to write and read the event procedure and easier
to debug or modify the programs later. However, it is not a must to do that as
long as you label your objects clearly and use comments in the program whenever
you feel necessary
-
One more important property is whether the control is enabled or not
-
Finally, you must also considering making the control visible or invisible
at runtime, or when should it become visible or invisible
TabIndex property of Controls
Visual Basic uses the TabIndex property to determine the control that would
receive the focus next when a tab key is pressed. Every time a tab key is pressed,
Visual Basic looks at the value of the TabIndex for the control that has focus
and then it scans through the controls searching for the next highest TabIndex
number. When there are no more controls with higher TabIndex value, Visual Basic
starts all over again with 0 and looks for the first control with TabIndex of
0 or higher that can accept keyboard input.
By default, Visual Basic assigns a tab order to control as we draw the controls
on the Form, except for Menu, Timer, Data, Image, Line and Shape controls, which
are not included in tab order. At run time, invisible or disabled controls also
cannot receive the focus although a TabIndex value is given. Setting the TabIndex
property of controls is compulsory in development environment.