Presentation is loading. Please wait.

Presentation is loading. Please wait.

 2001 Prentice Hall, Inc. All rights reserved. 1 Introduction to C# Programming Part I.

Similar presentations


Presentation on theme: " 2001 Prentice Hall, Inc. All rights reserved. 1 Introduction to C# Programming Part I."— Presentation transcript:

1  2001 Prentice Hall, Inc. All rights reserved. 1 Introduction to C# Programming Part I

2  2001 Prentice Hall, Inc. All rights reserved. 2 Introduction Console applications –No visual components –Only text output Windows applications –Forms with several output types –Contain Graphical User Interfaces (GUIs)

3  2001 Prentice Hall, Inc. All rights reserved. 3 Simple Program: Printing a line of text Comments –Comments can be created using //… –Multi-lines comments use /* … */ –Comments are ignored by the compiler –Used only for human readers Namespaces –Groups related C# features into a categories –Allows the easy reuse of code –Many namespaces are found in the.NET framework library –Must be referenced in order to be used White Space –Includes spaces, newline characters and tabs

4  2001 Prentice Hall, Inc. All rights reserved. 4 Simple Program: Printing a line of text Keywords –Words that cannot be used as variable or class names or any other capacity –Have a specific unchangeable function within the language –Example: class Classes –Class names can only be one word long (i.e. no white space in class name ) –Each class name is an identifier Can contain letters, digits, and underscores (_) Cannot start with digits Can start with the at symbol (@)

5  2001 Prentice Hall, Inc. All rights reserved. 5 Simple Program: Printing a line of text –Class bodies start with a left brace ({) –Class bodies end with a right brace (}) Methods –Building blocks of programs –The Main method Each console or windows application must have exactly one All programs start by executing the Main method –Braces are used to start ({) and end (}) a method Statements –Every statement must end in a semicolon (;)

6  2001 Prentice Hall, Inc. All rights reserved. 6 Simple Program: Printing a line of text Graphical User Interface –GUIs are used to make it easier to get data from the user as well as display data to the user –Message boxes Within the System.Windows.Forms namespace Used to prompt or display information to the user

7  2001 Prentice Hall, Inc. All rights reserved. Outline 7 Welcome1.cs Program Output 1 // Fig. 3.1: Welcome1.cs 2 // A first program in C#. 3 4 using System; 5 6 class Welcome1 7 { 8 static void Main( string[] args ) 9 { 10 Console.WriteLine( "Welcome to C# Programming!" ); 11 } 12 } Welcome to C# Programming! These are two single line comments. They are ignored by the compiler and are only used to aid other programmers. They use the double slash (//) This is the using directive. It lets the compiler know that it should include the System namespace. This is a blank line. It means nothing to the compiler and is only used to add clarity to the program. This is the beginning of the Welcome1 class definition. It starts with the class keyword and then the name of the class. This is the start of the Main method. In this case it instructs the program to do everything This is a string of characters that Console.WriteLine instructs the compiler to output

8  2001 Prentice Hall, Inc. All rights reserved. 8 Simple Program: Printing a Line of Text Fig. 3.2Visual Studio.NET-generated console application.

9  2001 Prentice Hall, Inc. All rights reserved. 9 Simple Program: Printing a Line of Text Fig. 3.3Execution of the Welcome1 program.

10  2001 Prentice Hall, Inc. All rights reserved. Outline 10 Welcome2.cs Program Output 1 // Fig. 3.4: Welcome2.cs 2 // Printing a line with multiple statements. 3 4 using System; 5 6 class Welcome2 7 { 8 static void Main( string[] args ) 9 { 10 Console.Write( "Welcome to " ); 11 Console.WriteLine( "C# Programming!" ); 12 } 13 } Welcome to C# Programming! Console.WriteLine will pick up where the line ends. This will cause the output to be on one line even though it is on two in the code.

11  2001 Prentice Hall, Inc. All rights reserved. Outline 11 Welcome3.cs Program Output 1 // Fig. 3.5: Welcome3.cs 2 // Printing multiple lines with a single statement. 3 4 using System; 5 6 class Welcome3 7 { 8 static void Main( string[] args ) 9 { 10 Console.WriteLine( "Welcome\nto\nC#\nProgramming!" ); 11 } 12 } Welcome to C# Programming! The \n escape sequence is used to put output on the next line. This causes the output to be on several lines even though it is only on one in the code.

12  2001 Prentice Hall, Inc. All rights reserved. 12 Simple Program: Printing a Line of Text

13  2001 Prentice Hall, Inc. All rights reserved. Outline 13 Welcome4.cs Program Output 1 // Fig. 3.7: Welcome4.cs 2 // Printing multiple lines in a dialog Box. 3 4 using System; 5 using System.Windows.Forms; 6 7 class Welcome4 8 { 9 static void Main( string[] args ) 10 { 11 MessageBox.Show( "Welcome\nto\nC#\nprogramming!" ); 12 } 13 } The System.Windows.Forms namespace allows the programmer to use the MessageBox class. This will display the contents in a message box as opposed to in the console window.

14  2001 Prentice Hall, Inc. All rights reserved. 14 Simple Program: Printing a Line of Text Fig. 3.8Adding a reference to an assembly in Visual Studio.NET (part 1). Add Reference dialogue

15  2001 Prentice Hall, Inc. All rights reserved. 15 Simple Program: Printing a Line of Text References folder Solution Explorer System.Windows.Forms reference Fig. 3.8Adding a reference to an assembly in Visual Studio.NET (part 2).

16  2001 Prentice Hall, Inc. All rights reserved. 16 Simple Program: Printing a Line of Text Fig. 3.10Dialog displayed by calling MessageBox.Show. OK button allows the user to dismiss the dialog. Dialog is automatically sized to accommodate its contents. Mouse cursor Close box

17  2001 Prentice Hall, Inc. All rights reserved. 17 Another Simple Program: Adding Integers Primitive data types –Data types that are built into C# string, int, double, char, long 15 primitive data types –Each data type name is a C# keyword –Same type variables can be declared on separate lines or on one line Console.ReadLine() –Used to get a value from the user input Int32.Parse() –Used to convert a string argument to an integer –Allows math to be preformed once the string is converted

18  2001 Prentice Hall, Inc. All rights reserved. Outline 18 Addition.cs 1 // Fig. 3.11: Addition.cs 2 // An addition program. 3 4 using System; 5 6 class Addition 7 { 8 static void Main( string[] args ) 9 { 10 string firstNumber, // first string entered by user 11 secondNumber; // second string entered by user 12 13 int number1, // first number to add 14 number2, // second number to add 15 sum; // sum of number1 and number2 16 17 // prompt for and read first number from user as string 18 Console.Write( "Please enter the first integer: " ); 19 firstNumber = Console.ReadLine(); 20 21 // read second number from user as string 22 Console.Write( "\nPlease enter the second integer: " ); 23 secondNumber = Console.ReadLine(); 24 25 // convert numbers from type string to type int 26 number1 = Int32.Parse( firstNumber ); 27 number2 = Int32.Parse( secondNumber ); 28 29 // add numbers 30 sum = number1 + number2; 31 This is the start of class AdditionTwo string variables defined over two lines The comment after the declaration is used to briefly state the variable purpose These are three int s that are declared over several lines and only use one semicolon. Each is separated by a coma. Console.ReadLine is used to take the users input and place it into a variable. This line is considered a prompt because it asks the user to input data. Int32.Parse is used to convert the given string into an integer. It is then stored in a variable. The two numbers are added and stored in the variable sum.

19  2001 Prentice Hall, Inc. All rights reserved. Outline 19 Addition.cs Program Output 32 // display results 33 Console.WriteLine( "\nThe sum is {0}.", sum ); 34 35 } // end method Main 36 37 } // end class Addition Please enter the first integer: 45 Please enter the second integer: 72 The sum is 117. Putting a variable out through Console.WriteLine is done by placing the variable after the text while using a marked place to show where the variable should be placed.

20  2001 Prentice Hall, Inc. All rights reserved. 20 Memory Concepts Memory locations –Each variable is a memory location Contains name, type, size and value –When a new value is entered the old value is lost –Used variables maintain their data after use

21  2001 Prentice Hall, Inc. All rights reserved. 21 Memory Concepts Fig. 3.12Memory location showing name and value of variable number1. number145

22  2001 Prentice Hall, Inc. All rights reserved. 22 Arithmetic Arithmetic operations –Not all operations use the same symbol Asterisk (*) is multiplication Slash (/) is division Percent sign (%) is the modulus operator Plus (+) and minus (-) –There are no exponents Division –Division can vary depending on the variables used When dividing two integers the result is always rounded down to an integer To be more exact use a variable that supports decimals

23  2001 Prentice Hall, Inc. All rights reserved. 23 Arithmetic Order –Parenthesis are done first –Division, multiplication and modulus are done second Left to right –Addition and subtraction are done last Left to right

24  2001 Prentice Hall, Inc. All rights reserved. 24 Memory Concepts Fig. 3.13Memory locations after values for variables number1 and number2 have been input. number145 number272

25  2001 Prentice Hall, Inc. All rights reserved. 25 Memory Concepts Fig. 3.14Memory locations after a calculation. number145 number272 sum117

26  2001 Prentice Hall, Inc. All rights reserved. 26 Arithmetic x y

27  2001 Prentice Hall, Inc. All rights reserved. 27 Arithmetic

28  2001 Prentice Hall, Inc. All rights reserved. 28 Arithmetic Fig. 3.17Order in which a second-degree polynomial is evaluated. Step 1. Step 2. Step 5. Step 3. Step 4. Step 6. y = 2 * 5 * 5 + 3 * 5 + 7; 2 * 5 is 10 (Leftmost multiplication) y = 10 * 5 + 3 * 5 + 7; 10 * 5 is 50 (Leftmost multiplication) y = 50 + 3 * 5 + 7; 3 * 5 is 15 (Multiplication before addition) y = 50 + 15 + 7; 50 + 15 is 65 (Leftmost addition) y = 65 + 7; 65 + 7 is 72 (Last addition) y = 72; (Last operation—place 72 into y )

29  2001 Prentice Hall, Inc. All rights reserved. 29 Decision Making: Equality and Relational Operators The if structure –Used to make a decision based on the truth of the condition True: a statement is performed False: the statement is skipped over –Fig. 3.18 lists the equality and rational operators There should be no spaces separating the operators

30  2001 Prentice Hall, Inc. All rights reserved. 30 Decision Making: Equality and Relational Operators

31  2001 Prentice Hall, Inc. All rights reserved. Outline 31 Comparison.cs 1 // Fig. 3.19: Comparison.cs 2 // Using if statements, relational operators and equality 3 // operators. 4 5 using System; 6 7 class Comparison 8 { 9 static void Main( string[] args ) 10 { 11 int number1, // first number to compare 12 number2; // second number to compare 13 14 // read in first number from user 15 Console.Write( "Please enter first integer: " ); 16 number1 = Int32.Parse( Console.ReadLine() ); 17 18 // read in second number from user 19 Console.Write( "\nPlease enter second integer: " ); 20 number2 = Int32.Parse( Console.ReadLine() ); 21 22 if ( number1 == number2 ) 23 Console.WriteLine( number1 + " == " + number2 ); 24 25 if ( number1 != number2 ) 26 Console.WriteLine( number1 + " != " + number2 ); 27 28 if ( number1 < number2 ) 29 Console.WriteLine( number1 + " < " + number2 ); 30 31 if ( number1 > number2 ) 32 Console.WriteLine( number1 + " > " + number2 ); 33 Combining these two methods eliminates the need for a temporary string variable. If number1 is the same as number2 this line is preformed If number1 does not equal number2 this line of code is executed. If number1 is less than number2 the program will use this line If number1 is greater than number2 this line will be preformed

32  2001 Prentice Hall, Inc. All rights reserved. Outline 32 Comparison.cs Program Output 34 if ( number1 <= number2 ) 35 Console.WriteLine( number1 + " <= " + number2 ); 36 37 if ( number1 >= number2 ) 38 Console.WriteLine( number1 + " >= " + number2 ); 39 40 } // end method Main 41 42 } // end class Comparison Please enter first integer: 2000 Please enter second integer: 1000 2000 != 1000 2000 > 1000 2000 >= 1000 Please enter first integer: 1000 Please enter second integer: 2000 1000 != 2000 1000 < 2000 1000 <= 2000 Please enter first integer: 1000 Please enter second integer: 1000 1000 == 1000 1000 <= 1000 1000 >= 1000 If number1 is less than or equal to number2 then this code will be used Lastly if number1 is greater than or equal to number2 then this code will be executed

33  2001 Prentice Hall, Inc. All rights reserved. 33 Decision Making: Equality and Relational Operators

34  2001 Prentice Hall, Inc. All rights reserved. 34 Control Structures Program of control –Program performs one statement then goes to next line Sequential execution –Different statement other than the next one executes Selection structure –The if and if/else statements –The goto statement No longer used unless absolutely needed Causes many readability problems Repetition structure –The while and do/while loops (chapter 5) –The for and foreach loops (chapter 5)

35  2001 Prentice Hall, Inc. All rights reserved. 35 if Selection Structure The if structure –Causes the program to make a selection –Chooses based on conditional Any expression that evaluates to a bool type True: perform an action False: skip the action –Single entry/exit point –Require no semicolon in syntax

36  2001 Prentice Hall, Inc. All rights reserved. 36 if Selection Structure Fig. 4.3Flowcharting a single-selection if structure. print “Passed” Grade >= 60 true false

37  2001 Prentice Hall, Inc. All rights reserved. 37 if/else selection structure The if/else structure –Alternate courses can be taken when the statement is false –Rather than one action there are two choices –Nested structures can test many cases –Structures with many lines of code need braces ({) Can cause errors

38  2001 Prentice Hall, Inc. All rights reserved. 38 if/else Selection Structure Fig. 4.4Flowcharting a double-selection if / else structure. Grade >= 60 print “Passed”print “Failed” falsetrue

39  2001 Prentice Hall, Inc. All rights reserved. 39 Conditional Operator (?:) –C#’s only ternary operator –Similar to an if/else structure –The syntax is: (boolean value ? if true : if false)

40  2001 Prentice Hall, Inc. All rights reserved. 40 while Repetition Structure Repetition Structure –An action is to be repeated Continues while statement is true Ends when statement is false –Contain either a line or a body of code Must alter conditional –Endless loop

41  2001 Prentice Hall, Inc. All rights reserved. 41 while Repetition Structure Fig. 4.5Flowcharting the while repetition structure. true false Product = 2 * product Product <= 1000

42  2001 Prentice Hall, Inc. All rights reserved. 42 Formulating Algorithms: Case Study 1 (Counter Controlled Repetition) Counter Controlled Repetition –Used to enter data one at a time Constant amount –A counter is used to determine when the loop should break –When counter hits certain value, the statement terminates

43  2001 Prentice Hall, Inc. All rights reserved. 43 Formulating Algorithms: Case Study 1 (Counter Controlled Repetition) Fig. 4.6Pseudocode algorithm that uses counter-controlled repetition to solve the class- average problem. Set total to zero Set grade counter to one While grade counter is less than or equal to ten Input the next grade Add the grade into the total Add one to the grade counter Set the class average to the total divided by ten Print the class average

44  2001 Prentice Hall, Inc. All rights reserved. Outline 44 Average1.cs 1 // Fig. 4.7: Average1.cs 2 // Class average with counter-controlled repetition. 3 4 using System; 5 6 class Average1 7 { 8 static void Main( string[] args ) 9 { 10 int total, // sum of grades 11 gradeCounter, // number of grades entered 12 gradeValue, // grade value 13 average; // average of all grades 14 15 // initialization phase 16 total = 0; // clear total 17 gradeCounter = 1; // prepare to loop 18 19 // processing phase 20 while ( gradeCounter <= 10 ) // loop 10 times 21 { 22 // prompt for input and read grade from user 23 Console.Write( "Enter integer grade: " ); 24 25 // read input and convert to integer 26 gradeValue = Int32.Parse( Console.ReadLine() ); 27 28 // add gradeValue to total 29 total = total + gradeValue; 30 31 // add 1 to gradeCounter 32 gradeCounter = gradeCounter + 1; 33 } The while loop will loop through 10 times to get the grades of the 10 students Initialize gradeCounter to 1Accumulate the total of the 10 gradesAdd 1 to the counter so the loop will eventually endInitialize total to 0Prompt the user to enter a grade

45  2001 Prentice Hall, Inc. All rights reserved. Outline 45 Average1.cs Program Output 34 35 // termination phase 36 average = total / 10; // integer division 37 38 // display average of exam grades 39 Console.WriteLine( "\nClass average is {0}", average ); 40 41 } // end Main 42 43 } // end class Average1 Enter integer grade: 100 Enter integer grade: 88 Enter integer grade: 93 Enter integer grade: 55 Enter integer grade: 68 Enter integer grade: 77 Enter integer grade: 83 Enter integer grade: 95 Enter integer grade: 73 Enter integer grade: 62 Class average is 79 Divide the total by ten to get the average of the ten grades Display the results

46  2001 Prentice Hall, Inc. All rights reserved. 46 Case Study 2 (Sentinel Controlled Repetition) Sentinel controlled repetition –Continues an arbitrary amount of times –Sentinel value Causes loop to break Avoid collisions –When flag value = user entered value Casting –Allows one variable to temporarily be used as another

47  2001 Prentice Hall, Inc. All rights reserved. 47 Case Study 2 (Sentinel Controlled Repetition) Fig. 4.8Pseudocode algorithm that uses sentinel-controlled repetition to solve the class- average problem. Initialize total to zero Initialize counter to zero Input the first grade (possibly the sentinel) While the user has not as yet entered the sentinel Add this grade into the running total Add one to the grade counter Input the next grade (possibly the sentinel) If the counter is not equal to zero Set the average to the total divided by the counter Print the average Else Print “No grades were entered”

48  2001 Prentice Hall, Inc. All rights reserved. Outline 48 Average2.cs 1 // Fig. 4.9: Average2.cs 2 // Class average with sentinel-controlled repetition. 3 4 using System; 5 6 class Average2 7 { 8 static void Main( string[] args ) 9 { 10 int total, // sum of grades 11 gradeCounter, // number of grades entered 12 gradeValue; // grade value 13 14 double average; // average of all grades 15 16 // initialization phase 17 total = 0; // clear total 18 gradeCounter = 0; // prepare to loop 19 20 // processing phase 21 // prompt for input and convert to integer 22 Console.Write( "Enter Integer Grade, -1 to Quit: " ); 23 gradeValue = Int32.Parse( Console.ReadLine() ); 24 The variable average is set to a double so that it can be more exact and have an answer with decimals Variables gradeCounter and total are set to zero at the beginning Get a value from the user and store it in gradeValue

49  2001 Prentice Hall, Inc. All rights reserved. Outline 49 Average2.cs 25 // loop until a -1 is entered by user 26 while ( gradeValue != -1 ) 27 { 28 // add gradeValue to total 29 total = total + gradeValue; 30 31 // add 1 to gradeCounter 32 gradeCounter = gradeCounter + 1; 33 34 // prompt for input and read grade from user 35 // convert grade from string to integer 36 Console.Write( "Enter Integer Grade, -1 to Quit: " ); 37 gradeValue = Int32.Parse( Console.ReadLine() ); 38 39 } // end while 40 41 // termination phase 42 if ( gradeCounter != 0 ) 43 { 44 average = ( double ) total / gradeCounter; 45 46 // display average of exam grades 47 Console.WriteLine( "\nClass average is {0}", average ); 48 } 49 else 50 { 51 Console.WriteLine( "\nNo grades were entered" ); 52 } 53 54 } // end method Main 55 56 } // end class Average2 Have the program loop as long as gradeValue is not -1 Accumulate the total of the gradesAdd 1 to the counter in order to know the student count Prompt the user for another grade, this time it is in the loop so it can happen repeatedly Make sure the total amount of entered grades was not zero to prevent any errors Divide the total by the number of times the program looped to find the average Display the average Inform user if no grades were entered

50  2001 Prentice Hall, Inc. All rights reserved. Outline 50 Average2.cs Program Output Enter Integer Grade, -1 to Quit: 97 Enter Integer Grade, -1 to Quit: 88 Enter Integer Grade, -1 to Quit: 72 Enter Integer Grade, -1 to Quit: -1 Class average is 85.6666666666667

51  2001 Prentice Hall, Inc. All rights reserved. 51 Case Study 3 (Nested Control Structures) Nesting –The insertion of one control structure inside another Multiple loops Loops with if statements

52  2001 Prentice Hall, Inc. All rights reserved. 52 Case Study 3 (Nested Control Structures) Fig. 4.10Pseudocode for examination-results problem. Initialize passes to zero Initialize failures to zero Initialize student to one While student counter is less than or equal to ten Input the next exam result If the student passed Add one to passes Else Add one to failures Add one to student counter Print the number of passes Print the number of failures If more than eight students passed Print “Raise tuition”

53  2001 Prentice Hall, Inc. All rights reserved. Outline 53 Analysis.cs 1 // Fig. 4.11: Analysis.cs 2 // Analysis of Examination Results. 3 4 using System; 5 6 class Analysis 7 { 8 static void Main( string[] args ) 9 { 10 int passes = 0, // number of passes 11 failures = 0, // number of failures 12 student = 1, // student counter 13 result; // one exam result 14 15 // process 10 students; counter-controlled loop 16 while ( student <= 10 ) 17 { 18 Console.Write( "Enter result (1=pass, 2=fail): " ); 19 result = Int32.Parse( Console.ReadLine() ); 20 21 if ( result == 1 ) 22 passes = passes + 1; 23 24 else 25 failures = failures + 1; 26 27 student = student + 1; 28 } 29 A while loop that will loop 10 timesA nested if statement that determines which counter should be added to If the user enters 1 add one to passes If the user enters 2 then add one to failures Keep track of the total number of students Initialize both passes and failures to 0 Set the student count to 1

54  2001 Prentice Hall, Inc. All rights reserved. Outline 54 Analysis.cs Program Output 30 // termination phase 31 Console.WriteLine(); 32 Console.WriteLine( "Passed: " + passes ); 33 Console.WriteLine( "Failed: " + failures ); 34 35 if ( passes > 8 ) 36 Console.WriteLine( "Raise Tuition\n" ); 37 38 } // end of method Main 39 40 } // end of class Analysis Enter result (1=pass, 2=fail): 1 Enter result (1=pass, 2=fail): 2 Enter result (1=pass, 2=fail): 1 Passed: 9 Failed: 1 Raise Tuition Display the results to the user If the total number of passes was greater than 8 then also tell the user to raise the tuition

55  2001 Prentice Hall, Inc. All rights reserved. Outline 55 Analysis.cs Program Output Enter result (1=pass, 2=fail): 1 Enter result (1=pass, 2=fail): 2 Enter result (1=pass, 2=fail): 1 Passed: 5 Failed: 5

56  2001 Prentice Hall, Inc. All rights reserved. 56 Assignment Operators Assignment operators –Can reduce code x += 2 is the same as x = x + 2 –Can be done with all the math operators ++, -=, *=, /=, and %=

57  2001 Prentice Hall, Inc. All rights reserved. 57 Assignment Operators

58  2001 Prentice Hall, Inc. All rights reserved. 58 Increment and Decrement Operators Increment operator –Used to add one to the variable –x++ –Same as x = x + 1 Decrement operator –Used to subtract 1 from the variable –y-- Pre-increment vs. post-increment –x++ or x-- Will perform an action and then add to or subtract one from the value –++x or --x Will add to or subtract one from the value and then perform an action

59  2001 Prentice Hall, Inc. All rights reserved. 59 Increment and Decrement Operators

60  2001 Prentice Hall, Inc. All rights reserved. Outline 60 Increment.cs Program Output 1 // Fig. 4.14: Increment.cs 2 // Preincrementing and postincrementing 3 4 using System; 5 6 class Increment 7 { 8 static void Main(string[] args) 9 { 10 int c; 11 12 c = 5; 13 Console.WriteLine( c ); // print 5 14 Console.WriteLine( c++ ); // print 5 then postincrement 15 Console.WriteLine( c ); // print 6 16 17 Console.WriteLine(); // skip a line 18 19 c = 5; 20 Console.WriteLine( c ); // print 5 21 Console.WriteLine( ++c ); // preincrement then print 6 22 Console.WriteLine( c ); // print 6 23 24 } // end of method Main 25 26 } // end of class Increment 556 566556 566 Declare variable cc is set to 5Display c (5)Display c (5) then add 1Display c (6) Add 1 then display c (6)Display c (5)Set c equal to 5

61  2001 Prentice Hall, Inc. All rights reserved. 61 Increment and Decrement Operators

62  2001 Prentice Hall, Inc. All rights reserved. 62 Introduction to.NET IDE: Displaying Text and an Image The program (Fig. 2.14) –Form to hold other controls –Label to display text –PictureBox to display a picture –No code needed to create this program Create the new program –Create a new project Make the project a windows application (Fig. 2.15) Name it: ASimpleProject and sets its location (Fig. 2.16) Set the form’s title bar (Fig. 2.17) –The Text property determines the text in the title bar –Set the value to: A Simple Program

63  2001 Prentice Hall, Inc. All rights reserved. 63 Displaying Text and an Image Fig. 2.14Simple program as it executes.

64  2001 Prentice Hall, Inc. All rights reserved. 64 Displaying Text and an Image Fig. 2.15Creating a new Windows application. Project name Project location Click to change project location Project type

65  2001 Prentice Hall, Inc. All rights reserved. 65 Displaying Text and an Image Fig. 2.16Setting the project location. Select project location Click to set project location

66  2001 Prentice Hall, Inc. All rights reserved. 66 Displaying Text and an Image Fig. 2.17Setting the form’s Text property. Name and type of object Property value Selected property Property description

67  2001 Prentice Hall, Inc. All rights reserved. 67 Displaying Text and an Image Resize the form (Fig. 2.18) –Click and drag one of the forms size handles Enabled handles are white Disabled handles are gray –The grid in the background will not appear in the solution Change the form’s background color (Fig. 2.19) –The BackColor determines the form’s background color Dropdown arrow is used to set the color Add a label control to the form (Fig. 2.20) –Controls can be dragged to the form –Controls can be added to the form by double clicking –The forms background color is the default of added controls

68  2001 Prentice Hall, Inc. All rights reserved. 68 Displaying Text and an Image Fig. 2.18Form with sizing handles. grid Mouse pointer over a sizing handle Enabled sizing handle Disabled sizing handle Title bar

69  2001 Prentice Hall, Inc. All rights reserved. 69 Displaying Text and an Image Fig. 2.19Changing property BackColor. Down arrow Current color Custom palette

70  2001 Prentice Hall, Inc. All rights reserved. 70 Displaying Text and an Image Fig. 2.20Adding a new label to the form. Label control New background color

71  2001 Prentice Hall, Inc. All rights reserved. 71 Displaying Text and an Image Set the label’s text (Fig. 2.21) –The Text property is used to set the text of a label –The label can be dragged to a desired location –Or Format > Center In Form > Horizontal can also be used to position the label as in in this example Set the label’s font size and align text (Fig. 2.22) –The Font property changes the label’s text (Fig. 2.23) –The TextAlign property to align the text (Fig. 2.24) Add a picture box to the form (Fig. 2.25) –Picture boxes are used to display pictures –Drag the picture box onto the form

72  2001 Prentice Hall, Inc. All rights reserved. 72 Displaying Text and an Image Fig. 2.21Label in position with its Text property set. Label centered with updated Text property

73  2001 Prentice Hall, Inc. All rights reserved. 73 Displaying Text and an Image Fig. 2.22 Properties window displaying the label’s properties. Ellipsis indicate dialog will appear

74  2001 Prentice Hall, Inc. All rights reserved. 74 Displaying Text and an Image Fig. 2.23 Font window for selecting fonts, styles and sizes. Font size Current font

75  2001 Prentice Hall, Inc. All rights reserved. 75 Displaying Text and an Image Fig. 2.24Centering the text in the label. Text alignment option Top-center alignment option

76  2001 Prentice Hall, Inc. All rights reserved. 76 Displaying Text and an Image Fig. 2.25Inserting and aligning the picture box. Updated Label New PictureBox

77  2001 Prentice Hall, Inc. All rights reserved. 77 Displaying Text and an Image Insert an image –The Image property sets the image that appears (Fig. 2.26) Pictures should be of type.gif,.jpeg, or.png (Fig. 2.27) –The picture box is resizable to fit the entire image (Fig. 2.28) Save the project –In the Solution Explorer select File > Save –Using Save All will save the source code and the project Run the project (Fig. 2.29) –In run mode several IDE features are disabled –Click Build Solution in the Build menu to compile the solution –Click Debug in the Start menu or press the F5 key

78  2001 Prentice Hall, Inc. All rights reserved. 78 Displaying Text and an Image Fig. 2.26 Image property of the picture box. Image property value (no image selected)

79  2001 Prentice Hall, Inc. All rights reserved. 79 Displaying Text and an Image Fig. 2.27Selecting an image for the picture box.

80  2001 Prentice Hall, Inc. All rights reserved. 80 Displaying Text and an Image Fig. 2.28Picture box after the image has been inserted. Newly inserted image (after resizing the picture box)

81  2001 Prentice Hall, Inc. All rights reserved. 81 Displaying Text and an Image Fig. 2.29IDE in run mode, with the running application in the foreground. Start button End button Run modeDesign form Design form (grid) Running application

82  2001 Prentice Hall, Inc. All rights reserved. 82 Displaying Text and an Image Terminating the program –Click the close button ( x in the top right corner) –Or click the End button in the toolbar

83  2001 Prentice Hall, Inc. All rights reserved. 83 Introduction to Windows Application Programming Inheritance –Base class a class from which another class inherits from –Derived class The class from which another class inherits –Classes inherit basics of a class Attributes (data) Behaviors (methods) –Prevents the continual rewriting of code

84  2001 Prentice Hall, Inc. All rights reserved. 84 Introduction to Windows Application Programming Fig. 4.16IDE showing program code for Fig. 2.15. Collapsed comment Collapsed code

85  2001 Prentice Hall, Inc. All rights reserved. 85 Introduction to Windows Application Programming Fig. 4.17Windows Form Designer generated code when expanded. Expanded code

86  2001 Prentice Hall, Inc. All rights reserved. 86 Introduction to Windows Application Programming Fig. 4.18Code generated by the IDE for welcomeLabel. Click here for design view Click here for code view Property initializations for WelcomeLabel

87  2001 Prentice Hall, Inc. All rights reserved. 87 Introduction to Windows Application Programming Fig. 4.19Using the Properties window to set a property value. Text property

88  2001 Prentice Hall, Inc. All rights reserved. 88 Introduction to Windows Application Programming Fig. 4.20Windows Form Designer generated code reflecting new property values.

89  2001 Prentice Hall, Inc. All rights reserved. 89 Introduction to Windows Application Programming Fig. 4.21Changing a property in the code view editor. Text property

90  2001 Prentice Hall, Inc. All rights reserved. 90 Introduction to Windows Application Programming Fig. 4.22New Text property value reflected in design mode. Text property value

91  2001 Prentice Hall, Inc. All rights reserved. 91 Introduction to Windows Application Programming Fig. 4.23Method ASimpleProgram_Load. ASimpleProgram_Load method

92  2001 Prentice Hall, Inc. All rights reserved. 92 Introduction to Windows Application Programming Fig. 4.24Changing a property value at runtime.


Download ppt " 2001 Prentice Hall, Inc. All rights reserved. 1 Introduction to C# Programming Part I."

Similar presentations


Ads by Google