ebook img

Microsoft C# Programming For The Absolute Beginner (2002). PDF

395 Pages·2003·14.47 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Microsoft C# Programming For The Absolute Beginner (2002).

Microsoft C# Programming for the Absolute Beginner Table of Contents Microsoft C# Programming for the Absolute Beginner.................................................................1 Introduction........................................................................................................................................4 Overview..................................................................................................................................4 Chapter 1: Basic Input and Output: A Mini Adventure...................................................................5 Project: The Mini Adventure.....................................................................................................5 Reviewing Basic C# Concepts.................................................................................................6 Namespaces......................................................................................................................7 Classes..............................................................................................................................7 Methods.............................................................................................................................7 Statements.........................................................................................................................7 The Console Object...........................................................................................................8 .NET Documentation..........................................................................................................8 Saying “Hello, World!”............................................................................................................12 Getting into the Visual Studio .Net Environment..............................................................13 Examining the Default Code............................................................................................16 Creating a Custom Namespace.......................................................................................16 Adding Summary Comments...........................................................................................17 Creating the Class............................................................................................................17 Moving from Code to a Program............................................................................................19 Compiling Your Program..................................................................................................20 Looking for Bugs..............................................................................................................21 Getting Input from the User....................................................................................................22 Creating a String Variable................................................................................................24 Getting a Value with the Console.ReadLine() Method.....................................................24 Incorporating a Variable in Output...................................................................................25 Combining String Values.......................................................................................................26 Combining Strings with Concatenation............................................................................27 Adding a Tab Character...................................................................................................27 Using the Newline Sequence...........................................................................................27 Displaying a Backslash....................................................................................................27 Displaying Quotation Marks.............................................................................................27 Launching the Mini Adventure...............................................................................................28 Planning the Story............................................................................................................28 Creating the Variables......................................................................................................28 Getting Values from the User...........................................................................................29 Writing the Output............................................................................................................29 Finishing the Program......................................................................................................30 Summary................................................................................................................................31 Chapter 2: Branching and Operators: The Math Game................................................................32 The Math Game.....................................................................................................................32 Using Numeric Variables.......................................................................................................33 The Simple Math Game...................................................................................................33 Numeric Variable Types...................................................................................................34 Integer Variables..............................................................................................................35 Long Integers...................................................................................................................36 Floating−Point Variables..................................................................................................36 Data Type Problems........................................................................................................37 i Table of Contents Chapter 2: Branching and Operators: The Math Game Math Operators................................................................................................................37 Converting Variables..............................................................................................................37 Explicit Casting.................................................................................................................39 The Convert Object..........................................................................................................39 Creating a Branch in Program Logic......................................................................................41 The Hi Bill Game..............................................................................................................41 Condition Testing.............................................................................................................43 The If Statement...............................................................................................................44 The Else Clause...............................................................................................................44 Multiple Conditions...........................................................................................................44 Working with The Switch Statement......................................................................................45 The Switch Demo Program..............................................................................................45 Examining How Switch Statements Work........................................................................46 Creating a Random Number..................................................................................................47 Introducing the Die Roller.................................................................................................47 Exploring the Random Object..........................................................................................48 Creating a Random Double with the .NextDouble() Method............................................48 Getting the Values of Dice...............................................................................................49 Creating the Math Game........................................................................................................50 Designing the Game........................................................................................................50 Creating the Variables......................................................................................................50 Managing Addition...........................................................................................................51 Managing Subtraction......................................................................................................52 Managing Multiplication and Division...............................................................................52 Checking the Answers.....................................................................................................53 Waiting for the Carriage Return.......................................................................................53 Summary................................................................................................................................54 Chapter 3: Loops and Strings: The Pig Latin Program................................................................55 Project: The Pig Latin Program..............................................................................................55 Investigating The String Object..............................................................................................56 The String Mangler Program............................................................................................56 A Closer Look at Strings..................................................................................................56 Using the Object Browser................................................................................................57 Experimenting with String Methods..................................................................................58 Performing Common String Manipulations......................................................................59 Using a For Loop...................................................................................................................60 Examining The Bean Counter Program...........................................................................60 Creating a Sentry Variable...............................................................................................61 Checking for an Upper Limit.............................................................................................61 Incrementing the Variable................................................................................................61 Examining the Behavior of the For Loop..........................................................................61 Varying the For Loop’s Behavior............................................................................................62 The Fancy Beans Program..............................................................................................63 Skipping Numbers............................................................................................................64 Counting Backwards........................................................................................................64 Using a Foreach Loop to Break Up a Sentence...............................................................65 Using a While Loop................................................................................................................65 The Magic Word Program................................................................................................66 ii Table of Contents Chapter 3: Loops and Strings: The Pig Latin Program Writing an Effective While Loop.......................................................................................68 Planning Your Program with the STAIR Process...................................................................70 S: State the Problem........................................................................................................70 T: Tool Identification.........................................................................................................70 A: Algorithm......................................................................................................................71 I: Implementation..............................................................................................................71 R: Refinement..................................................................................................................72 Applying STAIR to the Pig Latin Program..............................................................................72 Stating the Problem..........................................................................................................73 Identifying the Tools.........................................................................................................73 Creating the Algorithm.....................................................................................................73 Implementing and Refining..............................................................................................74 Writing the Pig Latin Program................................................................................................74 Setting Up the Variables..................................................................................................74 Creating the Outside Loop...............................................................................................75 Dividing the Phrase into Words........................................................................................75 Extracting the First Character..........................................................................................76 Checking for a Vowel.......................................................................................................76 Adding Debugging Code..................................................................................................76 Closing Up the code.........................................................................................................77 Summary................................................................................................................................77 Chapter 4: Objects and Encapsulation: The Critter Program......................................................78 Introducing the Critter Program..............................................................................................78 Creating Methods to Reuse Code..........................................................................................80 The Song Program...........................................................................................................80 Building the Main() Method..............................................................................................81 Creating a Simple Method................................................................................................82 Adding a Parameter.........................................................................................................83 Returning a Value............................................................................................................84 Creating a Menu....................................................................................................................85 Creating a Main Loop.......................................................................................................85 Creating the Sentry Variable............................................................................................86 Calling a Method..............................................................................................................86 Working with the Results..................................................................................................87 Writing the showMenu() Method......................................................................................87 Getting Input from the User..............................................................................................87 Handling Exceptions........................................................................................................88 Returning a Value............................................................................................................89 Creating a New Object with the CritterName Program..........................................................89 Creating the Basic Critter.................................................................................................89 Using Scope Modifiers.....................................................................................................90 Using a Public Instance Variable.....................................................................................90 Creating an Instance of the Critter...................................................................................91 Referring to the Critter’s Members...................................................................................91 Adding a Method....................................................................................................................91 Creating the talk() Method for the CritterTalk Program....................................................92 Changing the Menu to Use the talk() Method..................................................................92 Creating a Property in the CritterProp Program.....................................................................92 iii Table of Contents Chapter 4: Objects and Encapsulation: The Critter Program Examining the Critter Prop Program................................................................................93 Creating the Critter with a Name Property.......................................................................93 Using Properties as Filters...............................................................................................95 Making the Critter More Lifelike.............................................................................................96 Adding More Private Variables.........................................................................................96 Adding the Age() Method.................................................................................................97 Adding the Eat() Method..................................................................................................97 Adding the Play() Method.................................................................................................98 Modifying the Talk() Method.............................................................................................98 Making Changes in the Main Class..................................................................................98 Summary................................................................................................................................99 Chapter 5: Constructors, Inheritance, and Polymorphism: The Snowball Fight.....................101 Introducing the Snowball Fight.............................................................................................101 Inheritance and Encapsulation.............................................................................................102 Creating a Constructor.........................................................................................................102 Adding a Constructor to the Critter Class.......................................................................103 Creating the CritViewer Class........................................................................................104 Reviewing the Static Keyword........................................................................................105 Calling a Constructor from the Main() Method...............................................................106 Examining CritViewer’s Constructor...............................................................................106 Working with Multiple Files.............................................................................................107 Overloading Constructors....................................................................................................108 Viewing the Improved Critter Class................................................................................108 Adding Polymorphism to Your Objects..........................................................................109 Modifying the Critter Viewer in CritOver to Demonstrate Overloaded Constructors......110 Using Inheritance to Make New Classes.............................................................................111 Creating a Class to View the Clone...............................................................................112 Creating the Critter Class...............................................................................................113 Improving an Existing Class.................................................................................................113 Introducing the Glitter Critter..........................................................................................114 Calling the Base Class’s Constructors...........................................................................115 Adding Methods to a New Class....................................................................................116 Changing the Critter Viewer Again.................................................................................116 Using Polymorphism to Alter a Class’s Behavior.................................................................116 Creating the Snowball Fight.................................................................................................117 Building the Fighter........................................................................................................118 Building the Robot Fighter..............................................................................................120 Creating the Main Menu Class.......................................................................................122 Summary..............................................................................................................................125 Chapter 6: Creating a Windows Program: The Visual Critter....................................................127 Overview..............................................................................................................................127 Introducing the Visual Critter................................................................................................127 Creating a Windows−Style Program with a GUI..................................................................134 Thinking Like a GUI Programmer...................................................................................135 Creating a Graphical User Interface (GUI).....................................................................136 Examining the Code of a Windows Program.......................................................................139 Adding New Namespaces..............................................................................................140 iv Table of Contents Chapter 6: Creating a Windows Program: The Visual Critter Creating the Form Object...............................................................................................142 Creating a Destructor.....................................................................................................143 Creating the Components..............................................................................................144 Setting Component Properties.......................................................................................145 Setting Up the Form.......................................................................................................145 Writing the Main() Method..............................................................................................146 Creating an Interactive Program..........................................................................................147 Responding to a Simple Event.......................................................................................147 Creating and Adding the Components...........................................................................148 Adding an Event to the Program....................................................................................148 Creating an Event Handler.............................................................................................149 Allowing for Multiple Selections...........................................................................................150 Choosing a Font with Selection Controls.......................................................................150 Creating the User Interface............................................................................................151 Examining Selection Tools.............................................................................................153 Creating Instance Variables in the Font Chooser..........................................................154 Writing the AssignFont() Method....................................................................................155 Writing the Event Handlers............................................................................................157 Working with Images and Scroll Bars..................................................................................157 Changing an Image’s Size.............................................................................................158 Setting Up the Picture Box.............................................................................................159 Adding a Scroll Bar........................................................................................................161 Writing the Event−Handling Code..................................................................................161 Revisiting the Visual Critter..................................................................................................161 Designing the Program..................................................................................................162 Determining the Necessary Tools..................................................................................163 Designing the Form........................................................................................................163 Writing the Code............................................................................................................164 Summary..............................................................................................................................167 Chapter 7: Timers and Animation: The Lunar Lander................................................................168 Introducing the Lunar Lander...............................................................................................168 Reading Values from the Keyboard.....................................................................................169 Introducing the Key Reader Program.............................................................................169 Setting Up the Key Reader Program..............................................................................171 Coding the KeyPress Event...........................................................................................171 Coding the KeyDown Event...........................................................................................173 Determining Which Key Was Pressed...........................................................................175 Animating Images................................................................................................................175 Introducing the ImageList Control..................................................................................176 Setting Up an Image List................................................................................................177 Looking at the Image Collection.....................................................................................178 Displaying an Image from the Image List.......................................................................179 Using a Timer to Automate Animation.................................................................................180 Introducing the Timer Contro.l........................................................................................180 Configuring the Timer.....................................................................................................181 Adding Motion......................................................................................................................182 Checking for Keyboard Input..........................................................................................184 Working with the Location Property...............................................................................184 v Table of Contents Chapter 7: Timers and Animation: The Lunar Lander Detecting Collisions between Objects..................................................................................186 Coding the Crasher Program.........................................................................................188 Getting Values for newX and newY...............................................................................189 Bouncing the Ball off the Sides......................................................................................189 Checking for Collisions...................................................................................................189 Extracting a Rectangle from a Component....................................................................189 Getting More from the MessageBox Object.........................................................................190 Introducing the MsgDemo Program...............................................................................190 Retrieving Values from the MessageBox.......................................................................192 Coding the Lunar Lander.....................................................................................................192 The Visual Design..........................................................................................................192 The Designer−Generated Code.....................................................................................193 Class−Level Variables...................................................................................................194 The Constructor.............................................................................................................195 The timer1_Tick() Method..............................................................................................195 The moveShip() Method.................................................................................................196 The checkLanding() Method..........................................................................................197 The theForm_KeyDown() Method..................................................................................199 The showStats() Method................................................................................................200 The killShip() Method.....................................................................................................200 The initGame() Method..................................................................................................201 Summary..............................................................................................................................202 Chapter 8: Arrays: The Soccer Game..........................................................................................203 The Soccer Game................................................................................................................203 Introducing Arrays................................................................................................................204 Exploring the Counter Program......................................................................................205 Creating an Array of Strings...........................................................................................207 Referring to Elements in an Array..................................................................................208 Working with Arrays.............................................................................................................208 Using the Array Demo Program to Explore Arrays........................................................208 Building the Languages Array........................................................................................209 Sorting the Array............................................................................................................209 Creating Tables with Two−Dimensional Arrays.............................................................214 Designing the Soccer Game................................................................................................214 Solving a Subset of the Problem....................................................................................215 Adding Percentages for the Other Players.....................................................................216 Setting Up the Shot Demo Program...............................................................................216 Setting Up the List Boxes...............................................................................................217 Using a Custom Event Handler......................................................................................218 Writing the changeStatus() Method................................................................................219 Kicking the Bal.l..............................................................................................................219 Designing Programs by Hand..............................................................................................220 Examining the Form by Hand Program..........................................................................220 Adding Components in the Constructor.........................................................................221 Responding to the Button Event....................................................................................222 Building the Soccer Program...............................................................................................222 Setting Up the Variables................................................................................................222 Examining the Constructor.............................................................................................225 vi Table of Contents Chapter 8: Arrays: The Soccer Game Setting Up the Players...................................................................................................225 Setting Up the Opponents..............................................................................................227 Setting Up the Goalies...................................................................................................228 Responding to Player Clicks..........................................................................................228 Handling Good Shots.....................................................................................................229 Handling Bad Shots.......................................................................................................230 Setting a New Current Player.........................................................................................230 Handling the Passage of Time.......................................................................................231 Updating the Score........................................................................................................234 Summary..............................................................................................................................235 Chapter 9: File Handling: The Adventure Kit..............................................................................236 Introducing the Adventure Kit...............................................................................................236 Viewing the Main Screen...............................................................................................236 Loading an Adventure....................................................................................................237 Playing an Adventure.....................................................................................................238 Creating an Adventure...................................................................................................240 Reading and Writing Text Files............................................................................................241 Exploring the File IO Program........................................................................................242 Importing the IO Namespace.........................................................................................242 Writing to a Stream........................................................................................................243 Reading from a Stream..................................................................................................244 Creating Menus....................................................................................................................245 Exploring the Menu Demo Program...............................................................................245 Adding a MainMenu Object............................................................................................246 Adding a Submenu.........................................................................................................247 Setting Up the Properties of Menu Items.......................................................................248 Writing Event Code for Menus.......................................................................................249 Using Dialog Boxes to Enhance Your Programs.................................................................250 Exploring the Dialog Demo Program..............................................................................250 Adding Standard Dialogs to Your Form.........................................................................253 Using the File Dialog Controls........................................................................................253 Responding to File Dialog Events..................................................................................254 Using the Font Dialog Control........................................................................................255 Using the Color Dialog Contro.l......................................................................................256 Storing Entire Objects with Serialization..............................................................................256 Exploring the Serialization Demo Program....................................................................256 Creating the Contact Class............................................................................................257 Referencing the Serializable Namespace......................................................................258 Storing a Class...............................................................................................................258 Retrieving a Class..........................................................................................................259 Returning to the Adventure Kit Program..............................................................................259 Examining the Room Class............................................................................................260 Creating the Dungeon Class..........................................................................................263 Writing the Game Class.................................................................................................264 Writing the Editor Class..................................................................................................269 Writing the MainForm Class...........................................................................................274 Summary..............................................................................................................................276 vii Table of Contents Chapter 10: Chapter Basic XML: The Quiz Maker......................................................................277 Introducing the Quiz Maker Game.......................................................................................277 Taking a Quiz.................................................................................................................277 Creating and Editing Quizzes.........................................................................................278 Investigating XML................................................................................................................278 Defining XML..................................................................................................................279 Creating an XML Document in .NET..............................................................................283 Creating an XML Schema for Your Language...............................................................284 Investigating the .NET View of XML...............................................................................285 Exploring the XmlNode Class........................................................................................285 Exploring the XmlDocument Class.................................................................................286 Reading an Existing XML Document...................................................................................287 Creating the XML Viewer Program................................................................................293 Writing New Values to an XML Document...........................................................................298 Designating the Class−Level Variables.........................................................................298 Building the Document Structure...................................................................................299 Adding an Element to the Document.............................................................................300 Displaying the XML Code...............................................................................................301 Examining the Quizzer Program..........................................................................................302 Building the Main Form..................................................................................................303 Writing the Quiz Form....................................................................................................304 Writing the Editor Form..................................................................................................310 Summary..............................................................................................................................317 Chapter 11: Databases and ADO.NET: The Spy Database........................................................318 Overview..............................................................................................................................318 Introducing the SpyMaster Program....................................................................................318 Creating a Simple Database................................................................................................321 Accessing the Data Server.............................................................................................321 Accessing the Data in a Program...................................................................................326 Using Queries to Modify Data Results.................................................................................333 Limiting Data with the SELECT Statement....................................................................333 Using an Existing Database...........................................................................................338 Adding the Capability to Display Queries.......................................................................339 Creating a Visual Query Builder.....................................................................................340 Working with Relational Databases.....................................................................................345 Improving Your Data with Normalization........................................................................346 Using a Join to Connect Two Tables.............................................................................347 Creating a View..............................................................................................................350 Referring to a View in a Program...................................................................................353 Incorporating the Agent Specialty Attribute....................................................................353 Working with Other Databases............................................................................................355 Creating a New Connection...........................................................................................355 Converting a Data Set to XML.......................................................................................359 Reading from XML to a Data Source.............................................................................360 Creating the SpyMaster Database.......................................................................................361 Building the Main Form..................................................................................................361 Editing the Assignments.................................................................................................362 Editing the Specialties....................................................................................................363 Viewing the Agents........................................................................................................364 viii

Description:
Page 1. Page 2. Microsoft C# Programming for the Absolute Beginner. Page 3. Table of Contents. Microsoft C# Programming for the Absolute
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.