Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 CS 106 Computing Fundamentals II Chapter 210 “Adding Controls to User Forms” Herbert G. Mayer, PSU CS Status 7/4/2013 Initial content copied verbatim.

Similar presentations


Presentation on theme: "1 CS 106 Computing Fundamentals II Chapter 210 “Adding Controls to User Forms” Herbert G. Mayer, PSU CS Status 7/4/2013 Initial content copied verbatim."— Presentation transcript:

1 1 CS 106 Computing Fundamentals II Chapter 210 “Adding Controls to User Forms” Herbert G. Mayer, PSU CS Status 7/4/2013 Initial content copied verbatim from CS 106 material developed by CS professors: Cynthia Brown & Robert Martin

2 2 Syllabus Goal Goal Adding Controls Adding Controls Mac vs. Windows Mac vs. Windows Double Click Form Name to Get Controls Double Click Form Name to Get Controls Useful Controls Useful Controls Writing Codes Writing Codes

3 3 Goal Presentation “Create_User_Form” is paired with this presentation “Add_Control_2_User_Form”Presentation “Create_User_Form” is paired with this presentation “Add_Control_2_User_Form” Overall goal is to show how to enter a string and then display the concatenated string in these steps:Overall goal is to show how to enter a string and then display the concatenated string in these steps: 1 A label prompts user to enter a string1 A label prompts user to enter a string 2 A text box reads this string input, e.g. “Cindy”2 A text box reads this string input, e.g. “Cindy” 3 A button, when subsequently pushed, causes the string concatenation and display event3 A button, when subsequently pushed, causes the string concatenation and display event 4 A second text box displays “This is: Cindy!”4 A second text box displays “This is: Cindy!”

4 4 Adding Controls A user form isn’t much use without some controlsA user form isn’t much use without some controls We’re going to add controls and write code for themWe’re going to add controls and write code for them Note that the code to open the form should belong to the workbook projectNote that the code to open the form should belong to the workbook project The code for controls on the form, though, belongs to the form, and is on a separate code windowThe code for controls on the form, though, belongs to the form, and is on a separate code window

5 5 Mac vs. Windows The following slides show the Windows versionThe following slides show the Windows version There are videos of doing both versions, and there are a few slides at the end of this presentation that show how things look on the MacThere are videos of doing both versions, and there are a few slides at the end of this presentation that show how things look on the Mac Mac users should read through the whole presentation as not everything is duplicatedMac users should read through the whole presentation as not everything is duplicated

6 6 Double click Form Name to Get Code Click here

7 7 Ready to add controls… This is the design view of the form, where you can add controls and set their properties.

8 8 Useful Controls Listboxes: for printing data for the user to see. Also good for giving a list of choices to pick fromListboxes: for printing data for the user to see. Also good for giving a list of choices to pick from Command Button: clicking the button creates an event we can write a program forCommand Button: clicking the button creates an event we can write a program for Labels: used to put useful information and instructions on the form; can serve as prompt for inputLabels: used to put useful information and instructions on the form; can serve as prompt for input Check boxes: used to offer options where the user can pick any number from none to allCheck boxes: used to offer options where the user can pick any number from none to all

9 9 Useful Controls Option buttons: used to offer options where exactly one should be chosenOption buttons: used to offer options where exactly one should be chosen Frames: used to group controls like option buttons; needed if there is more than one set of optionsFrames: used to group controls like option buttons; needed if there is more than one set of options Textboxes: a place for the user to type inputTextboxes: a place for the user to type input Others we won’t use in CS 106Others we won’t use in CS 106

10 10 Events for Controls Most things you do with a control, like checking a check box, typing in a text box, or clicking a command button, are events in VBAMost things you do with a control, like checking a check box, typing in a text box, or clicking a command button, are events in VBA You can write code to handle any control eventYou can write code to handle any control event If you don’t write code for an event, then nothing happensIf you don’t write code for an event, then nothing happens We will typically use the command button control to trigger execution of our programWe will typically use the command button control to trigger execution of our program

11 11 Finding UserForm Code Page If you click on the Window item, you can move between the code page and design page for the form and the code page for the workbook.

12 12 The Form Code Page This looks a lot like the window for the workbook code, so be careful you use the right window! I just typed Option Explicit at the top.

13 13 Adding Four Controls A label. I changed the caption, font, and size properties A text box. I changed the name to txtName. I changed the caption property and the name to btnPrint A label. I changed the name to lblHello, the font to a large size, and the Visible property to False.

14 14 Names for Controls Controls that are referred to in the code should have meaningful namesControls that are referred to in the code should have meaningful names Start with a three letter prefix that identifies the control: btn for button, lbl for label, txt for text box, etc.Start with a three letter prefix that identifies the control: btn for button, lbl for label, txt for text box, etc. You can leave the names unchanged on controls that are not referred to, like most labelsYou can leave the names unchanged on controls that are not referred to, like most labels

15 15 Writing the Code To get started, double click on the control you want to write an event routine forTo get started, double click on the control you want to write an event routine for Works if you have already opened the code window for your formWorks if you have already opened the code window for your form VBA will guess the name of the routine and put the procedure header on the code page, all set for you to start codingVBA will guess the name of the routine and put the procedure header on the code page, all set for you to start coding

16 16 Double Click on btnPrint

17 17 My code changes the properties of the label lblHello: Option Explicit '*************************************************************** 'Demonstrate the use of controls on a user form '*************************************************************** Private Sub btnPrint_Click() Dim name As String Dim name As String '*** read the name from the text box '*** read the name from the text box name = txtName.Text name = txtName.Text '*** create the caption and show the label '*** create the caption and show the label lblHello.Caption = "Hello, " & name & "!" lblHello.Caption = "Hello, " & name & "!" lblHello.Visible = True lblHello.Visible = True End Sub

18 18 Push F5 to run the code, or use the Run menu

19 19 After Pushing the Button:

20 20 Try it Yourself! You can download the example program and try using itYou can download the example program and try using it Try making some changes in the properties, fonts, colors, etc. of the various controls, and in the layout of the user interfaceTry making some changes in the properties, fonts, colors, etc. of the various controls, and in the layout of the user interface Also try adding a button that does something to the text in the large labelAlso try adding a button that does something to the text in the large label

21 21 MAC VERSION

22 22 Adding Controls A blank user form isn’t much use!A blank user form isn’t much use! Let’s add a few controls.Let’s add a few controls. When using controls that our program refers to, we give them meaningful names.When using controls that our program refers to, we give them meaningful names. We have a standard way to construct names. Form names start with frm; buttons with btn; text boxes with txt; labels with lblWe have a standard way to construct names. Form names start with frm; buttons with btn; text boxes with txt; labels with lbl

23 23 Watch the Video There’s a video that shows the construction of this user form applicationThere’s a video that shows the construction of this user form application The following slides show some of the major highlightsThe following slides show some of the major highlights

24 24 Add controls I’ve added two labels, a text box, and a command button, using the palette at right to choose my controls, and the properties window to set their properties.

25 25 The Large Label I changed the font size on the large label to 16, made it a bold font, and changed the name to lblHello. I set its Visible property to False, so you don’t see it when you start the program.

26 26 Command Button I changed the name of the button to btnClick and the caption to read “Now Click This Button”. I changed the font size to 12, as well.

27 27 The Code Option Explicit '****************************************************** ' Read name from text box and print on label '****************************************************** Private Sub btnClick_Click() Dim name As String Dim name As String name = txtName.Text name = txtName.Text lblHello.Caption = "Hello, " & name & "!" lblHello.Caption = "Hello, " & name & "!" lblHello.Visible = True ‘important so we see the message! lblHello.Visible = True ‘important so we see the message! End Sub

28 28 Try it Yourself! You can download the example program and try using itYou can download the example program and try using it Try making some changes in the properties, fonts, colors, etc. of the various controls, and in the layout of the user interfaceTry making some changes in the properties, fonts, colors, etc. of the various controls, and in the layout of the user interface Also try adding a button that does something to the text in the large labelAlso try adding a button that does something to the text in the large label


Download ppt "1 CS 106 Computing Fundamentals II Chapter 210 “Adding Controls to User Forms” Herbert G. Mayer, PSU CS Status 7/4/2013 Initial content copied verbatim."

Similar presentations


Ads by Google