Chapter 13 Graphics, Animation, Sound, and Drag-and-Drop Copyright © 2011 by The McGraw-Hill Companies, Inc. All Rights Reserved. McGraw-Hill.

Slides:



Advertisements
Similar presentations
Chapter 9 Color, Sound and Graphics
Advertisements

COMPUTER PROGRAMMING I Objective 8.03 Apply Animation and Graphic Methods in a Windows Form (4%)
Using Microsoft Office Excel 2007
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Tutorial 21 - “Cat and Mouse” Painter Application.
GUI and Swing, part 2 The illustrated edition. Scroll bars As we have previously seen, a JTextArea has a fixed size, but the amount of text that can be.
© by Pearson Education, Inc. All Rights Reserved. continued …
1 Applets Chapter 1 To understand:  why applets are used to extend the capabilities of Web pages  how an applet is executed and know about the restrictions.
Graphics and Multimedia. Outline Introduction Graphics Contexts and Graphics Objects Color Control.
1 Introduction to the Visual Studio.NET IDE Powerpoint slides modified from Deitel & Deitel.
Graphics and Multimedia. Introduction The language contains many sophisticated drawing capabilities as part of namespace System.Drawing and the other.
Graphics Images – PictureBox control Drawing graphics - Graphics object Multimedia controls PictureBox control Image property – select image Choose how.
1 Chapter 26 D&D – Graphics Outline 26.1 Introduction 26.3 Graphics Contexts and Graphics Objects 26.4 Color Control 26.5 Font Control 26.6 Drawing Lines,
Lecture Set 13 Drawing Mouse and Keyboard Events Part A - Drawing.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. M I C R O S O F T ® Animating and Using Multimedia Effects Lesson 10.
Microsoft Visual Basic 2005 CHAPTER 8 Using Procedures and Exception Handling.
Chapter 3 Working with Symbols and Interactivity.
Computer Programming and Basic Software Engineering 9 Building Graphical User Interface A Brief Introduction to GDI+ S.R.G. Fraser, Pro Visual C++/CLI.
20-753: Fundamentals of Web Programming Copyright © 1999, Carnegie Mellon. All Rights Reserved. 1 Lecture 16: Java Applets & AWT Fundamentals of Web Programming.
Microsoft Visual Basic 2012 Using Procedures and Exception Handling CHAPTER SEVEN.
Chapter 9 - VB 2008 by Schneider1 Chapter 9 – Additional Controls and Objects 9.1 List Boxes, Combo Boxes, and the File-Opening Control 9.2 Seven Elementary.
1 Chapter 9 – Additional Controls and Objects 9.1 List Boxes and Combo Boxes 9.2 Eight Additional Controls and Objects 9.3 Multiple-Form Objects 9.4 Graphics.
Key Applications Module Lesson 19 — PowerPoint Essentials
Learning Microsoft Power Point Getting Started  There are three features that you should remember as you work within PowerPoint 2007: the Microsoft.
Multimedia ! Graphics ! Animation ! Sound Tip Of the Day 4 Tip of the Day: When using graphic methods at Form Load, the AutoRedraw property of the container.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Tutorial 26 – CheckWriter Application Introducing Graphics.
1 Windows Graphics. 2 Objectives You will be able to Use the Windows GDI+ to draw arbitrary figures and text on a Windows form. Add a handler for the.
1-1 OBJ Copyright 2003, Paradigm Publishing Inc. Dr. Joseph Otto Silvia Castaneda Christopher deCastro CSULA Macromedia Flash MX Introduction.
Graphics and Multimedia Part #2
COM148X1 Interactive Programming Lecture 6. Topics Today Generate Random Numbers Graphics Animation.
© 2011 Delmar, Cengage Learning Chapter 3 Working with Symbols and Interactivity.
Addison Wesley is an imprint of © 2010 Pearson Addison-Wesley. All rights reserved. Chapter 5 Working with Images Starting Out with Games & Graphics in.
© 2010 Delmar, Cengage Learning Chapter 3: Working with Symbols and Interactivity.
Chapter 9 - VB.Net by Schneider1 Chapter 9 – Additional Controls and Objects 9.1 List Boxes, Combo Boxes, and the File-Opening Control The List Box Control.
1 Chapter 9 – Additional Controls and Objects 9.1 List Boxes and Combo Boxes 9.2 Eight Additional Controls and Objects 9.3 Multiple-Form Programs 9.4 Graphics.
Chapter One An Introduction to Visual Basic 2010 Programming with Microsoft Visual Basic th Edition.
Addison Wesley is an imprint of © 2010 Pearson Addison-Wesley. All rights reserved. Chapter 7 The Game Loop and Animation Starting Out with Games & Graphics.
Microsoft Visual Basic 2012 CHAPTER THREE Program Design and Coding.
T U T O R I A L  2009 Pearson Education, Inc. All rights reserved CheckWriter Application Introducing Graphics and Printing.
ACTIVINSPIRE TRAINING Tips and tools for creating Flipcharts on ActivInspire.
The PictureBox Control Prefix Prefix – pic Image Property PictureBox Image Property – Changes the image or file that appears inside of the PictureBox SizeMode.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. WORD 2007 M I C R O S O F T ® THE PROFESSIONAL APPROACH S E R I E S Lesson 15 Advanced Tables.
McGraw-Hill © 2010 The McGraw-Hill Companies, Inc. All rights reserved. Chapter 13 Graphics, Animation, Sound and Drag-and-Drop.
Irwin/McGraw-Hill Copyright© 2000 by the McGraw-Hill Companies, Inc. PowerPoint® Presentation to accompany prepared by James T. Perry University of San.
Chapter 2 – Introduction to the Visual Studio .NET IDE
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Tutorial 21 - “Cat and Mouse” Painter Application.
Visual Basic Programming Introduction VB is one of the High level language VB has evolved from the BASIC language. BASIC stands for Beginners All-purpose.
16.9 Introduction to Multimedia Visual Basic offers many convenient ways to include images and animations in programs Computing field decades ago mainly.
More Control Properties Part 10 dbg. Form Properties that Affect TitleBar ControlBox Property (T/F) Do you display the icon, associated menu to the left,
Controls. Common properties Height – Height of the control Left – Left of the control Width – width of a control Top - From the screen top Font – Foreground.
Images Part 11 dbg. 2 Images The form and several controls can display a number of different types of image files in the BackgroundImage Property. These.
COMPUTER PROGRAMMING I 3.01 Apply Controls Associated With Visual Studio Form.
Compound Data Types Part13dbg. 2 Point A Point is a simple built-in struct that stores a pair of screen coordinates. Instantiate a Point: Point aPoint.
COMPUTER PROGRAMMING I 3.01 Apply Controls Associated With Visual Studio Form.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Chapter 1: An Introduction to Visual Basic .NET
Chapter 1: An Introduction to Visual Basic 2015
Flash Interface, Commands and Functions
Chapter 2 – Introduction to the Visual Studio .NET IDE
Chapter 9 – Additional Controls and Objects
3.01 Apply Controls Associated With Visual Studio Form
Computer Programming I
Graphics and Multimedia
Using Procedures and Exception Handling
CASE Tools Graphical User Interface Programming Using C#
Chapter 9 – Additional Controls and Objects
Working with Symbols and Interactivity
Repetition and Multiple Forms
Chapter 12 Graphics in Windows and the Web
Presentation transcript:

Chapter 13 Graphics, Animation, Sound, and Drag-and-Drop Copyright © 2011 by The McGraw-Hill Companies, Inc. All Rights Reserved. McGraw-Hill

13-2 Objectives (1 of 2) Use Graphics methods to draw shapes, lines, and filled shapes. Create a drawing surface with a Graphics object. Instantiate Pen and Brush objects as needed for drawing. Create animation by changing pictures at run time. Create simple animation by moving images.

13-3 Objectives (2 of 2) Use the Timer component to automate animation. Use scroll bars to move an image. Add a sound player component to add sound to a project. Incorporate drag-and-drop events into your program. Draw a pie chart using the methods of the Graphics object.

13-4 Graphics in Windows and the Web Graphics refers to any text, drawing, image, or icon that is displayed on the screen in either: – Windows Forms PictureBox control Can draw graphics shapes (circles, lines, rectangles) on a form or control Accepts more file formats than a Web Form – Web Forms Image control

13-5 The Graphics Environment >NET framework uses GDI+ technology for drawing graphics. GDI+ is designed to be device-independent. Code to draw a graphic is the same regardless of the output device.

13-6 Steps for Drawing Graphics Create a Graphics object to use as a drawing surface. Instantiate a Pen or Brush object to draw with. Call the drawing methods from the Graphics object.

13-7 The Paint Event Procedure Place code for drawing methods in the Paint event procedure for the form or control. Graphics are redrawn every time form is repainted or rendered. Declare a Graphics object. Assign the Graphics property of the procedure's PaintEventArgs argument to the new Graphics object. Private Sub Form1_Paint(ByVal sender As Object, _ ByVal e As System.Windows.Forms.PaintEventArgs) _ Handles Me.Paint ' Create a graphics object. Dim Gr As Graphics = e.Graphics

13-8 Pen and Brush Objects (1 of 2) Pen Used to draw lines or outlined shapes such as rectangles or circles Properties: Width, Color Brush Used to create filled shapes Property: Color

13-9 Pen and Brush Objects (2 of 2) Width property Specifies the width of the stroke of a line or outlined shape created by Pen object Specified in pixels Default width = One pixel Color property Specifies color of lines drawn by Pen object and color of filled shapes drawn by Brush object Assigns color using Color constants

13-10 Graphic Shapes Drawn with Pen and Brush Objects Drawn with Pen Drawn with Brush

13-11 The Pen Class Constructors Examples Pen(Color) Pen(Color, Width) Dim RedPen As New Pen(Color.Red) Dim WidePen As New Pen(Color.Black, 10)

13-12 The SolidBrush Class Constructor Example SolidBrush(Color) Dim BlueBrush As New SolidBrush(Color.Blue) There are other Brush Classes: TextureBrush, HatchBrush, LinearGradientBrush, PathGradientBrush. See Help for more information.

13-13 The Coordinate System (1 of 2) Graphics are measured from a starting point of 0,0 for the X and Y coordinates beginning in the upper-left corner. X represents the horizontal position and Y is the vertical position. The starting point depends on where the graphic is placed — each drawing method allows a specific starting position using X and Y coordinates. Most of the drawing methods allow the position to be specified using either Point structure Size structure Rectangle structure

13-14 The Coordinate System (2 of 2) Form PictureBox 0,0 Position On Form 0,0 Position On PictureBox

13-15 The Point Structure Designed to hold the X and Y coordinates as a single unit Create a Point object and give it values for X and Y. Use the object anywhere that accepts a Point structure as an argument. Example Dim MyStartingPoint As New Point(20, 10)

13-16 The Size Structure Two components, specified in pixels Width (specified first) Height Use the object anywhere that accepts a Size structure as an argument. Example Dim MyPictureSize As New Size(100, 20) ‘Width is 100, height is 20

13-17 The Rectangle Structure Defines a rectangular region Specified by Upper left corner (X and Y coordinates ) Size (width and height) Use the object anywhere that accepts a Rectangle structure as an argument. Example Dim myOtherRectangle As New Rectangle(XInteger, YInteger, _ WidthInteger, HeightInteger) Dim MyRectangle As New Rectangle(MyStartingPoint, MyPictureSize)

13-18 Graphics Methods Two basic categories, draw and fill Draw methods create an outline shape with a Pen object. Fill methods are solid shapes created with Brush objects. Each method requires X and Y coordinates or a Point object; some require the size.

13-19 Graphics Methods — General Form DrawLine(Pen, x1Integer, y1Integer, x2Integer, y2Integer) DrawLine(Pen, Point1, Point2) DrawRectangle(Pen, xInteger, yInteger, widthInteger, heightInteger) DrawRectangle(Pen, Rectangle) FillRectangle(Brush, xInteger, yInteger, widthInteger, heightInteger) FillRectangle(Brush, Rectangle) FillEllipse(Brush, xInteger, yInteger, widthInteger, heightInteger) FillEllipse(Brush, Rectangle)

13-20 Graphics Methods — Code Example Private Sub GraphicsForm_Paint(ByVal sender As Object, _ ByVal e As System.Windows.Forms.PaintEventArgs) _ Handles Me.Paint With e.Graphics Dim SmallRectangle as New Rectangle(10, 10, 30, 30).DrawRectangle(Pens.Red, SmallRectangle).DrawLine(Pens.Green, 50, 0, 50, 300) ' Draw a blue filled circle. ' If the width and height are equal, then the FillEllipse method ' draws a circle; otherwise it draws an ellipse..FillEllipse(Brushes.Blue, 100, 100, 50, 50) ' Draw a fat blue line..DrawLine(New Pen(Color.Blue, 15), 300, 0, 300, 300) End With End Sub

13-21 Selected Methods from the Graphics Class Clear( ) Dispose( ) DrawArc( ) DrawLine( ) DrawEllipse( ) DrawRectangle( ) DrawPie( ) DrawString( ) FillEllipse( ) FillPie( ) FillRectangle( ) See Help for information for all draw and fill methods

13-22 Random Numbers Random class contains methods to return random numbers of different data types. To generate a different series for each run, use an integer value when instantiating an object from the Random class (seeding the random number generator). Can use system date to get different seed for each execution of code. Generate random numbers using the Random object’s Next method.

13-23 The Random.Next Method General Form Examples ' Any positive integer number. Object.Next( ) ' A positive integer up to the value specified. Object.Next(MaximumValueInteger) ' A positive integer in the range specified. Object.Next(MinimumValueInteger, MaximumValueInteger) ' Return an integer in the range 0 – 10. GenerateRandomInteger = GenerateRandom.Next(10) ' Return an integer in the range 0 to the width of the form. RandomNumberInteger = GenerateRandom.Next(1, Me.Width)

13-24 Simple Animation Possible approaches Display an animated.gif file in a PictureBox. Replace one graphic with another. Move a picture. Rotate through a series of pictures. Create graphics with various graphics methods. On a Web page, display animated.gif files or use a scripting language or Java Applets and avoid round trips to the server.

13-25 Displaying an Animated Graphic Animation is achieved on either a Windows Form or a Web Form by displaying an animated.gif file. Use a PictureBox control on a Windows Form and an Image control on a Web Form.

13-26 Controlling Pictures at Run Time Pictures can be added or changed at run time. To speed execution, load pictures in controls that can be made invisible and set Visible property to True at run time. Use the FromFile Method to load a picture at run time. Requires file name and path Store image files in Bin folder to eliminate need for path. To remove a picture from the display, either hide or use the Nothing constant.

13-27 Switching Images Easy way to show animation is to replace one picture with another. Use images (or icons) of similar sizes. May use images (or icons) with opposite states (open/closed, on/off, etc.).

13-28 Creating Animation Each of the graphics is placed into the upper picture box when the user clicks the Change button.

13-29 Moving a Picture Change the Left and Top properties --OR--, better Use the control's SetBounds Method, which produces a smoother-appearing move.

13-30 SetBounds Method Used to move a control or change its size General Form Examples SetBounds(XInteger, YInteger, WidthInteger, HeightInteger) PlanePictureBox.SetBounds(XInteger, YInteger, PlaneWidthInteger, PlaneHeight)Integer EnginePictureBox.SetBounds(xInteger, YInteger, WidthInteger, HeightInteger)

13-31 The Timer Component (1 of 2) Causes events to occur at a set interval with its Tick event Useful for animation; move or change an image each time the Tick event occurs Sets value at run time or design time

13-32 The Timer Component (2 of 2) Interval property Between 0 and 65,535 milliseconds 1,000 milliseconds = 1 second Enabled property False (default) ==> Do not run Tick event True ==> Run Tick event at designated interval Tick event Occurs each time the Timer's designated interval elapses, if Enabled = True

13-33 The Scroll Bar Controls Horizontal scroll bars Vertical scroll bars Used to scroll through a document or a window Used to control items that have a range of values such as sound level, color, or size Can be changed in small or large increments

13-34 Scroll Bar Properties (1 of 3) Together represent a range of values Minimum – Minimum value Maximum – Maximum value SmallChange – Distance to move when user clicks scroll arrows LargeChange – Distance to move when user clicks gray area of scroll bar or presses Page-Up or Page-Down keys

13-35 Scroll Bar Properties (2 of 3) Gray Area (LargeChange property) Scroll Box (Value property) Scroll Arrow (SmallChange property) Maximum value (Maximum property) Minimum value (Minimum property)

13-36 Scroll Bar Properties (3 of 3) Value Property Indicates the current position of the scroll box and the corresponding value within the scroll bar User clicks up Scroll Arrow. – Value property decreases by the amount of the SmallChange unless Minimum has been reached. User clicks down Scroll Arrow. – Value property increases by the amount of the SmallChange unless Maximum has been reached.

13-37 Scroll Bar Events ValueChanged event Occurs anytime the Value property changes, by user action or in code Scroll event Occurs when user drags the scroll box As long as user continues to drag scroll box, this event continues to occur. Only when user releases scroll box will Scroll event cease and ValueChanged event occur.

13-38 The SoundPlayer Component Programs play sounds files, called wave files (.wav) using the new My.Computer.Audio.Play --OR-- A SoundPlayer component. The component’s SoundLocation property gives the location of the file.

13-39 Adding Sounds Files When using sounds in a project, the best way is to add the files to the project’s resources. To refer to the filename in code, use “My.Resources.Filename”

13-40 A Sound-Playing Program Users can choose to play one of the preselected sounds or select a file to play. File types are restricted using the filter property.

13-41 Drag-and-Drop Programming (1 of 2) Often, Windows users use drag-and-drop events rather than selecting a menu item or pressing a button. Drag-and-drop programming requires that a user begin the drag-drop with a MouseDown event. Determine the effect of the drop with a DragEnter event. The event that holds the code for the drop is the DragDrop event.

13-42 Drag-and-Drop Programming (2 of 2) The Source object is dragged to the Target object in a drag-and-drop operation.

13-43 The Source Object The item chosen to drag With.NET programming, begin a drag-drop operation by setting the source object using a control’s DoDragDrop method. The DragDrop effect specifies the requested action; choices include DragDropEffects.Copy, DragDropEffects.Move, and DragDropEffects.None. General Form Example ObjectName.DoDragDrop(DataToDrag, DesiredDragDropEffect)

13-44 The Target Object Location at which a user releases the mouse, a drop, is the target. Forms may have multiple targets. To set a control to be a target, set its AllowDrop property to True. Target control needs DragEnter procedure that sets the effect DragDrop event procedure that executes the action to take and when the drop takes place

13-45 The DragEnter Event When a user drags a source object over the target, the target control’s DragEnter event fires. The argument is defined as DragEventArgs, which has special properties for the drag operation.

13-46 The DragDrop Event Statements to perform additional functions are added to the DragDrop event. Data that is being dragged is contained in the Data property of the argument of the DragDrop event procedure. Retrieve the dragged data using the GetData method of the Data object. Format the data or use a predefined clipboard data format.