Home

Introduction to Objects

 

Fundamentals of Windows Controls

 

Introduction

A computer application, such as those that run on Microsoft Windows, is equipped with objects called Windows controls. These are the objects that allow a person to interact with the computer.

The Form

The primary control used on most applications is called a form. To create a form, on the main menu of Microsoft Visual Basic, you can click Insert -> UserForm. This would add a form to your project.

The form is primarily used as a platform on which you add other controls. For this reason, a form is referred to as a container. By itself, a form is not particularly useful. You should add other objects to it.

When you create or add a form, a module is also automatically created for it. To access the module associated with a form, you can right-click the form and click View Code.

 

The Spreadsheet

When working in Microsoft Excel, you can use Windows controls either on the work area or in a form in Microsoft Visual Basic. Therefore, just like a form, a spreadsheet also is a container of controls.

Practical LearningPractical Learning: Creating a Form

  1. Start Microsoft Excel and, on the Ribbon, click Developer
  2. In the Code section, click Visual Basic
  3. To create a form, on the main menu, click Insert -> UserForm
  4. To access its associated module, right-click the form and click View Code
  5. To return to the form, on the main menu, click Window and click the menu item that has (UserForm)

Introduction to Windows Controls

The main objects used to help a person interact with the computer are Windows controls. There are two main ways you can access these objects when working with Microsoft Excel.

If you are working in Microsoft Excel, you can add or position some Windows controls on the document. To do that, on the Ribbon, click Developer. In the Control section, click Insert:

Insert

This would display the list of controls available in Microsoft Excel. The controls appear in two sections: Form Controls and ActiveX Controls. If you are working on a spreadsheet in Microsoft Excel, you should use only the controls in the ActiveX Controls section. If you are working on a form in Microsoft Visual Basic, a Toolbox equipped with various controls will appear.

Practical LearningPractical Learning: Accessing Windows Controls

  1. In Microsoft Visual Basic, notice that a Toolbox appears next to the form
     
    Microsoft Visual Basic
  2. To return to Microsoft Excel, on the Taskbar, click Microsoft Excel
  3. To display the controls, in the Controls section of the Ribbon, click Insert

Using Additional Objects

The Developer tab of the Ribbon in Microsoft Excel provides the most regularly used controls. These controls are enough for any normal spreadsheet you are developing. Besides these objects, other controls are left out but are still available. To use one or more of these left out controls, in the Controls section of the Ribbon, click Insert and click the More Controls button:

More Controls

This would open the More Controls dialog box:

You can scroll up and down in the window to locate the desired control. If you see a control you want to use, click it and click OK.

In Microsoft Visual Basic, to access more controls, on the main menu, you can click Tools -> Additional Controls... This would open the Additional Controls dialog box:

Additional Controls

To select a control, you can click its check box. After selecting the controls, click OK.

The Names of Controls

Every control in the Developer tab of the Ribbon or in the Toolbox of Microsoft Visual Basic has a specific name. You may be familiar with some of these controls. If you are not sure, you can position the mouse on a control and a tool tip would come up. In our lessons, we will use the tool tip of a control to name it. The names we will use are:

ActiveX Controls Name Forms Controls Name
Button Command Button Label Label
Combo Box Combo Box Toggle Button Toggle Button
Check Box Check Box    
List Box List Box TabStrip
Text Box Text Box MultiPage
Scroll Bar Scroll Bar Scroll Bar ScrollBar
Spin Button Spin Button Text Box
Option Button Option Button Image
Label Label RefEdit
Image Frame
Toggle Button Toggle Button    

Adding a Control to a Container

 

Adding One Control

To use one of the controls from the Ribbon or the Toolbox, you can click it. If you then simply click its container, the control would be added where you clicked and with some default dimensions.

In Microsoft Excel, if you click the button control in the Form Controls section and click the work area, just after the control has been added the Assign Macro dialog box would come up:

Assign Macro

In our lessons, when working in Microsoft Excel, we will avoid using the objects in the Form Controls section.

If you want, instead of clicking and releasing the mouse, you can click and drag. This allows you to "draw" the control and give the dimensions of your choice. If the control has already been added but you want it to assume different dimensions, you can click it to select it and then drag one of its border handles.

To programmatically add a control to a spreadsheet, use the following formula:

Private Sub Exercise()
    Worksheets(1).OLEObjects.Add "Forms.ControlName.1"
End Sub

The only thing you need to know and change about this formula is the ControlName factor. We will learn about Worksheets(1) in Lesson 12. Use the following names:

Use this Name To Get a   Use this Name To Get
CheckBox Check Box   ComboBox Combo Box
CommandButton Command Button   Label Label
ListBox List Box   Image Image
OptionButton Option Button   ScrollBar Scroll Bar
SpinButton Spin Button   TextBox Text Box
ToggleButton Toggle Button      

Here is an example that creates and positions a text box on a spreadsheet:

Private Sub Exercise()
    Worksheets(1).OLEObjects.Add "Forms.TextBox.1"
End Sub

Adding Many Controls

The above technique is used to add one control at a time. If you want to add the same control again, you must click it on the Ribbon or in the Toolbox and click its container again. If you plan to add the same control many times, in the Toolbox of Microsoft Visual Basic, double-click the control and click the form as many times as necessary. When you have reached the desired number of copies of that control, to dismiss it, in the Toolbox, click the same control again, click another control, or click the Select Objects button.

Practical Learning Practical Learning: Accessing Windows Controls

  1. To add a control to the document, Under ActiveX Controls, click the Command Button button Command Button and click a box (any box in the work area)
  2. To add another control, in the Controls section of the Ribbon, click the arrow under Insert and click the Combo Box button Combo Box and click somewhere in the work area away from the previously added button
  3. On the Taskbar, click Microsoft Visual Basic to return to it
  4. On the Toolbox, click the CommandButton and click somewhere in the top-left section of the form (no need for precision at this time)
  5. On the Toolbox, click the ComboBox and click somewhere in the middle-center section of the form (no need for precision at this time)
  6. On the Toolbox, click the CheckBox and click somewhere in the lower-right section of the form (no need for precision at this time)
  7. To return to Microsoft Excel, click the View Microsoft Excel button View Microsoft Excel

Control Selection

 

Single Control Selection

After you have added a control to a container, in order to perform any type of configuration on the control, you must first select it. Sometimes you will need to select a group of controls.

To select a control in the work area in Microsoft Excel, first, in the Controls section of the Ribbon, click the Design Mode button Design Mode. After clicking it, right-click the control and press Esc. If you are working in Visual Basic, to select a control, click it on the form.

In Microsoft Excel, when a control is selected, it is surrounded by 8 small circles, also called handles. Here is an example:

Selected Control

In Microsoft Visual Basic, when a control is selected, it is surrounded by 8 small squares:

A Selected Control on a Form

Practical Learning Practical Learning: Selecting Controls

  1. Position the mouse on CommandBut that was positioned on the form and click.
    Notice that you are able to select the button
  2. In the Controls section of the Ribbon, click the Design Mode button Design Mode
  3. In the work area, click the CommandBut button again
  4. Click the combo box. Notice that, this time, you cannot select the controls
  5. To return to controls to edit mode, in the Controls section of the Ribbon, click the Design Mode button Design Mode
  6. To return to Microsoft Visual Basic, in the Code section of the Ribbon, click the Visual Basic button Visual Basic

Multiple Control Selection

To select more than one control on a spreahsheet, click the first. Press and hold Shift. Then click each of the desired controls. If you click a control that should not be selected, click it again. After selecting the group of controls, release Shift:

Controls Selected

If you are working on a form in Microsoft Visual Basic, first click one of the controls you want to select, then press and hold Ctrl. Click each of the desired controls. If you click a control that should not be selected, click it again. After selecting the group of controls, release Ctrl that you were holding. As another technique you can use to select various controls, click an unoccupied area on the form, hold the mouse down, drawing a fake rectangle that would either include each of the desired controls or would touch each, then release the mouse:

Selecting Controls

Every control touched by the fake rectangle or included in it would be selected:

Selected Controls

When a group of controls is selected, the first selected control displays 8 handles but its handles are white while the others are dark.

Practical LearningPractical Learning: Selecting and Using Various Controls

  1. On the form, click one of the controls
  2. Press and hold Ctrl
  3. Click one of the other controls
  4. Release Ctrl
  5. To dismiss the selection, press Esc

Control Deletion

If there is a control on your form or your workarea but you don't need it, you can remove it. To delete a control, first select it and then press Delete. You can also right-click a control and click Cut.

To remove a group of controls, first select them, then press Delete or right-click the selection and click Cut.

Practical LearningPractical Learning: Deleting Controls

  1. While still in Microsoft Visual Basic, press Ctrl + A to select all controls
  2. Press Delete to remove them
  3. To display them again, press Ctrl + Z
  4. To return to Microsoft Excel, click the View Microsoft Excel button View Microsoft Excel

Classes and Objects

 

Introduction

The language of Microsoft Visual Basic uses the concept of class to identify or manage the parts of an application. Consider an object like a house. It has such characteristics as its type (single family, townhouse, condominium, etc), the number of bedrooms, the number of bathrooms, etc:

Single Family House

These characteristics are used to describe a house to somebody who wants to buy it. To get such an object, you must first define the criteria that describe it. Here is an example:

House
[
      Address
      Type of House
      Number of Bedrooms
      Number of Bathrooms
      Has Indoor Garage
      The Living Room is Covered With Carpet
      The Kitchen Has an Island Stove
]

This information is used to describe a house. Based on this, House is called a class. To actually describe a real house, you must provide information for each of the above characteristics. Here is an example:

House: Langston
[
      Address: 6802 Leighton Ave
      Type of House: Single Family
      Number of Bedrooms: 4
      Number of Bathrooms: 3
      Has Indoor Garage: Yes
      The Living Room is Covered With Carpet: Yes
      The Kitchen Has an Island Stove: No
]     

In this case, Langston is not a class anymore, it is a real house and is explicitly described. Therefore, Langston is called an object. Based on this, a class is a technique used to provide the criteria to define an object. An object is the result of a description based on a class.

Properties

In our example of a house, we used words to describe it. Examples are: Address, Type of House, Number of Bedrooms, Number of Bathrooms. In computer programming, the characteristics used to describe an object are referred to as its properties.

To display the characteristics of a Windows control, in Microsoft Excel:

  • Right-click the control and click Properties:

Properties

  • If the control is selected in the work area, in the Controls setion of the Ribbon, click the Properties button Properties.

Any of these two actions would display the Properties window for the control that was right-clicked:

Properties Window

The Properties window would stay on the screen of Microsoft Excel as long as you want. To show the properties of another control, simply click it in the work area.

If you are working in Microsoft Visual Basic, to show the characteristics of a control, right-click it and click Properties. This also would display the Properties window and show the characteristics of the selected control. While the Properties window in Microsoft Excel floats and does not hold a specific position, by default, in Microsoft Visual Basic, the Properties window is position on the lower-left side:

The Properties Window in Microsoft Visual Basic

You can move it by dragging its title bar.

The Properties window allows you view or change a characteristic of the control. The properties of an object can be changed when designing it or by writing code. You can also manipulate these characteristics both at design and at run times. This means that you can set some properties at design time and some others at run time.

The items in the Properties window display in two lists. In the beginning, you may be regularly lost when looking for a particular property. To get the list in alphabetic order, click the Alphabetic tab. To get the list by categories, click the Categorized tab.

When a control is selected, the Properties window displays only its characteristics. When various controls have been selected, the Properties window displays only the characteristics that are common to the selected controls.

Practical Learning Practical Learning: Viewing the Properties of a Control

  1. To view the properties of the button, in the work area, right-click the CommandBut button you added and click Properties
  2. On the Taskbar, click Microsoft Visual Basic
  3. To see the properties of a Visual Basic object, right-click an unoccupied area of the form and click Properties.
    Notice that the Properties window displays the characteristics of the form
  4. To see the properties of another object, on the form, click the button
 
 

Home Copyright © 2008-2010 FunctionX, Inc. Next