Presentation is loading. Please wait.

Presentation is loading. Please wait.

7-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.

Similar presentations


Presentation on theme: "7-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf."— Presentation transcript:

1 7-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf

2 Lists, Loops, and Printing Chapter 7 7 McGraw-Hill© 2006 The McGraw-Hill Companies, Inc. All rights reserved.

3 7-3 Objectives (1 of 2) Create and use list boxes and combo boxes Differentiate among the available types of combo boxes Enter items into list boxes using the Items collection in the Properties window Add and remove items in a list at run time Determine which item in a list is selected Use the Items.Count property to determine the number of items in a list

4 7-4 Objectives (2 of 2) Display a selected item from a list Use Do/Loops and For/Next statements to iterate through a loop Terminate a loop with the Exit statement Skip to the next iteration of a loop by using the Continue statement Send information to the printer or the Print Preview window using the PrintDocument class

5 7-5 ListBoxes and ComboBoxes (1 of 2) Have most of the same properties and operating in a similar fashion An exception is that a combo box control has a DropDown Style property Provide the user with a list of items to select from Various styles, choose based on Space available Need to select from an existing list Need to add to a list

6 7-6 List Boxes and Combo Boxes (2 of2) Various Styles of List and Combo boxes

7 7-7 The Items Collection List of items in a ListBox or ComboBox is a collection VB Collections are objects that have properties and methods that allow Adding items Removing items Referring to individual elements Counting items Clearing the collection

8 7-8 Filling a List/Using the Properties Window Design time in Properties window Items property Click on ellipses to open String Collection Editor Type list items, end each line with Enter key Run time methods Items.Add --OR-- Items.Insert

9 7-9 Filling a List - Design Time Click ellipses button to open

10 7-10 Using the Items.Add Method Use to add new items to the list at run time General Form Examples Object.Items.Add(ItemValue) Me.schoolsListBox.Items.Add("Harvard " ) Me.schoolsListBox.Items.Add( " Stanford " ) Me.schoolsListBox.Items.Add(schoolsTextBox.Text) Me.majorsComboBox.Items.Add(majorsComboBox.Text) Me.majorsComboBox.Items.Add(majorString)

11 7-11 Using the Items.Insert Method Use to add new items to the list at run time in a specific location (index position) in the collection General Form Examples Me.schoolsListBox.Items.Insert(0, " Harvard " ) Me.majorsComboBox.Items.Insert(1, Me.majorsComboBox.Text) Object.Items.Insert(IndexPosition, ItemValue)

12 7-12 The SelectedIndex Property Index number of currently selected item is stored in the SelectedIndex property If no list item is selected, SelectedIndex property is negative 1 (-1) Use to select an item in list or deselect all items in code

13 7-13 The Items.Count Property Use to determine number of items in the list Remember: Items.Count is always one more than the highest possible Selected Index because indexes begin with 0 For example, if there are five items in a list: Items.Count = 5AND Highest Index = 4

14 7-14 Me.schoolsListBox.Items(5) = "University of California" ' Next line references the currently selected item. selectedFlavorString = flavorListBox.Items(flavorListBox.Selected Index).ToString( ) Referencing the Items Collection Use the index of the item to reference a specific item in the collection Remember that the index is zero based so the first item in the list is index position zero

15 7-15 Removing an Item from a List Use the Items.RemoveAt method to remove an item by index from the list General Form Examples ‘ Remove the first line from the list. Me.namesListBox.Items.RemoveAt(0) ‘ Remove the item in position indexInteger. Me.schoolsComboBox.Items.RemoveAt(indexInteger) ‘ Remove the currently selected item. Me.chComboBox.Items.RemoveAt(chComboBox.SelectedIndex) Object.Items.RemoveAt(IndexPosition)

16 7-16 The Items.Remove Method Use the Items.Remove method to remove an item by specifying the text General Form Examples ‘ Remove the specified item. Me.namesListBox.Items.Remove("My School " ) ‘ Remove the matching item. Me.schoolsComboBox.Items.Remove(schoolTextBox.Text) ‘ Removes the currently selected item. Me.coffeeComboBox.Items.Remove(coffeeComboBox.Text) Object.Items.Remove(TextString)

17 7-17 Clearing a List Use the Items.Clear method to clear all items and empty a combo box or list box General Form Examples Me.schoolsListBox.Items.Clear( ) Me.majorsComboBox.Items.Clear( ) Object.Items.Clear( )

18 7-18 List Box and Combo Box Events SelectedIndexChanged Event Default event for both controls Happens when user selects an item in the box TextChanged Event Occurs when user types text into combo box List box does not have TextChanged Event Enter Event (control receives focus) Fires when a user tabs from control to control Leave Event (control loses focus) Triggers when a user tabs between controls

19 7-19 Do/Loops A loop repeats a series of instructions An iteration is a single execution of the statement(s) in the loop Used when the exact number of iterations is unknown A Do/Loop terminates based on a specified condition Execution of the loop continues while a condition is True or until a condition is True The condition can be placed at the top or the bottom of the loop

20 7-20 The Do and Loop Statements -General Form Do {While |Until} condition ' Statements in loop. Loop --OR-- Do ' Statements in loop. Loop {While | Until} condition Top of Loop Condition, Pretest Bottom of Loop Condition, Posttest

21 7-21 Pretest vs. Posttest Pretest, loop may never be executed since tested BEFORE running Do While … Loop Do Until … Loop Posttest, loop will always be executed at least once Do … Loop While Do … Loop Until

22 7-22 Pretest vs. Posttest Diagram

23 7-23 The Boolean Data Type Revisited Can help when searching a list for a specific value Boolean variable is always in one of two states; True or False When a particular situation occurs, set Boolean variable to True Use a loop to check for True Many programmers refer to Boolean variables as switches or flags Switches have two states – on or off Flags are considered either up or down

24 7-24 For/Next Loops Used to repeat statements in a loop a specific number of times Uses a numeric counter variable, called Loop Index, which is tested to determine the number of times the statements inside the loop will execute Loop Index is incremented at the bottom of the loop on each iteration Step value can be included to specify the incrementing amount to increment Loop Index, step can be a negative number

25 7-25 The For and Next Statements - General Form For LoopIndex = InitialValue To TestValue [Step Increment] ' Statements in loop. Next [LoopIndex] A For/Next loop can handle all three elements of a counter-controlled loop Initialize the counter Increment the counter Test the counter to determine when it is time to terminate the loop

26 7-26 For/Next Loop Diagram

27 7-27 More Details about For/Next Loops Negative Increment or Counting Backwards is possible Set the Step increment to a negative number Conditions Satisfied before Entry Statements in the body might not be executed at all Altering the Values of the Loop Control Variables Altering the InitialValue, TestValue, and Increment in the body is not allowed Altering the LoopIndex is allowed, although it is considered a poor programming practice Can lead to endless or infinite loops

28 7-28 Exiting Loops In some situations you may need to exit the loop prematurely Click on the form’s close box or use the VB menu bar or toolbar to stop the program; or Ctrl+Break Use the Exit Do or Exit For statement inside the loop structure Generally the Exit Do or Exit For statement is part of an If statement

29 7-29 Skipping to the Next Iteration of a Loop In some situations you may need to skip to the next iteration of the loop The Continue Do or Continue For statement transfers control to the last statement in the loop, and retests the loop exit condition Generally the Continue Do or Continue For statement is part of an If statement

30 7-30 Making Entries Appear Selected When a user tabs into a text box that already has an entry, the user-friendly approach is to select the text If a text box fails validation, select the text Selecting the entry in a Text Box Use the SelectAll method Good location is in the text box’s Enter event Selecting an entry in a List Box Set the SelectedIndex property to make a single item in a list box appear selected

31 7-31 Sending Information to the Printer Components appear in the Printing tab of the toolbox Most professional programmers using VB use a separate utility program to format printer reports Several companies sell utilities that do a nice job designing and print reports VB Professional Edition and Enterprise Edition include Crystal Reports for creating reports from database files

32 7-32 The PrintDocument Component The PrintDocument component is used for printing outputs of VB.NET projects Appears in the Component Tray Execute the Print() method to start printing The code belongs in the Click event procedure for the Print button or menu item that can be selected to begin printing

33 7-33 Setting Up the Print Output PrintPage event is fired once for each page to be printed, and is referred to as callback BeginPrint and EndPrint are also fired at the beginning and end of the printing PrintPage event includes the argument e as System.Drawing.Printing.PrintPageEventArgs Properties of the PrintPageEventArgs are useful for handling page margins and sending strings of text to the page

34 7-34 The Graphics Page Set up graphics page in memory and then the page is sent to the printer Can contain strings of text and graphic elements Specify the exact X and Y coordinates of each element to be printed on the page X coordinate is the horizontal distance from across the page; the Y coordinate is the vertical distance from the top of the page

35 7-35 Using the DrawString Method Used to send a line of text to the graphics page Belongs to the Graphics object of the PrintPageEventArgs argument Is an overloaded method so there are several forms for calling the method Arguments for the DrawString method include: What to print What font and color to print in Where to print Set up the Font and X/Y coordinates to be used before executing the DrawString method

36 7-36 The DrawString Method General Form Examples DrawString(StringToPrint, Font, Brush, Xcoordinate, Ycoordinate) e.Graphics.DrawString(printLineString, printFont, Brushes.Black, _ horizontalPrintLocationSingle, verticalPrintLocationSingle) e.Graphics.DrawString("My text string", myFont, Brushes.Black, _ 100.0, 100.0) e.Graphics.DrawString(nameTextBox.Text, New Font("Arial", 10), _ Brushes.Red, leftMarginSingle, currentLineSingle)

37 7-37 Setting the X and Y Coordinates For each print line, specify X and Y coordinates Create variables declared as Single data type to set the X and Y values Dim horizontalPrintLocationSingle As Single Dim verticalPrintLocationSingle As Single

38 7-38 PrintPageEventArgs PrintPageEventArgs argument has several useful properties and are used to determine the present settings MarginBounds PageBounds PageSettings

39 7-39 Printing the Contents of List Box Techniques for printing, a loop, and the list box properties can be combined to send the contents of a list box to the printer ' Print out all items in the coffeeComboBox list For listIndexInteger = 0 To Me.coffeeComboBox.Items.Count - 1 ' Set up a line printLineString = Me.coffeeComboBox.Items(listIndexInteger).ToString() ' Send the line to the graphics page object e.Graphics.DrawString(printLineString, printFont, Brushes.Black, horizontalPrintLocationSingle, verticalPrintLocationSingle) ' Increment the Y position for the next line verticalPrintLocationSingle += lineHeightSingle Next

40 7-40 Printing the Selected Item from a List When an item is selected in a list box or a combo box, the Text property holds the selected item ' Set up the selected line printLineString = "Coffee: " & Me.coffeeComboBox.Text & _ " Syrup: " & Me.syrupListBox.Text ' Send the line to the graphics page object e.Graphics.DrawString(printLineString, printFont, Brushes.Black, horizontalPrintLocationSingle, verticalPrintLocationSingle)

41 7-41 Displaying a Print Preview The PrintPreviewDialog component is the key to print preview Add PrintPreviewDialog component to form Appears in the Component Tray Default name is fine Assign in code the same PrintDocument object you are using for printing Execute the ShowDialog method of the PrintPreviewDialog component

42 7-42 PrintPreviewDialog Component

43 7-43 The Using Block System resources such as fonts can be access inside of a Using block Variables that are declared in a using block are only accessible within that block The advantage of declaring a variable inside a Using block is that system resources are released as soon as the block terminates

44 7-44 Other Issues Printing numeric data Alignment of the decimal values is important Format each number as you want it to print, and then measure the length of the formatted string Printing multiple pages If the printing content extends beyond e.MarginsBound.Bottom along the Y axis, then you have to explicitly define printing of multiple pages The e.HasMorePages property needs to be set to True

45 7-45 Using Static Variables Static local variables retain their value for the life of the project Can be useful for Running totals Running counts Boolean switches Storing current page number/count when printing multiple pages


Download ppt "7-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf."

Similar presentations


Ads by Google