C# GUI - Basics. Objectives.NET supports two types: WinForms, traditional, desktop GUI apps. WebForms – newer, for Web apps. Visual Studio.NET supports.

Slides:



Advertisements
Similar presentations
6. WinForms: GUI Programming in.NET. 2 Microsoft Objectives.NET supports two types of form-based apps, WinForms and WebForms. WinForms are the traditional,
Advertisements

Using Macros and Visual Basic for Applications (VBA) with Excel
CHAPTER TWO Creating Simple Visual Basic.NET Windows Applications.
© by Pearson Education, Inc. All Rights Reserved.
Visual Basic 2010 How to Program. © by Pearson Education, Inc. All Rights Reserved.2.
Chapter 1: An Introduction to Visual Basic.NET Programming with Microsoft Visual Basic.NET, Second Edition.
Graphical User Interface (GUI) A GUI allows user to interact with a program visually. GUIs are built from GUI components. A GUI component is an object.
Copyright 2003 : Ismail M.Romi, PPU. All Rights Reserved 1 Lab2 Managing Controls.
Chapter 31 Visual Basic Controls A Form is a windows-style screen displayed by Visual Basic programs. In a form, a programmer can create objects in a form.
1 Introduction to the Visual Studio.NET IDE Powerpoint slides modified from Deitel & Deitel.
C# Programming: From Problem Analysis to Program Design1 Introduction to Windows Programming C# Programming: From Problem Analysis to Program Design 3.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Introduction to Visual Basic. What is Visual Basic? An environment for developing Windows applications Components –A GUI (Graphical User Interface - gooey)
Chapter 3 Introduction to Event Handling and Windows Forms Applications.
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
Joe Hummel, PhD Dept of Mathematics and Computer Science Lake Forest College Lecture 8: WebForms — Web-based.
Microsoft Visual Basic 2012 CHAPTER TWO Program and Graphical User Interface Design.
Microsoft Visual Basic 2005 CHAPTER 8 Using Procedures and Exception Handling.
Visual Basic Chapter 1 Mr. Wangler.
BIM313 – Advanced Programming Simple Controls 1. Contents Traditional Controls – Labels, Text Boxes, Buttons, Check Boxes, List Boxes, Combo Boxes Advanced.
Joe Hummel, PhD Dept of Mathematics and Computer Science Lake Forest College
Microsoft Visual Basic 2005: Reloaded Second Edition
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
IE 411/511: Visual Programming for Industrial Applications
Lecture 7: WinForms & Controls, Part MicrosoftIntroducing CS using.NETJ# in Visual Studio.NET Objectives “Visual Studio.NET ships with a wealth.
CHAPTER TWO Creating Simple Visual Basic.NET Windows Applications.
Chapter 1: An Introduction to Visual Basic 2005 Programming with Microsoft Visual Basic 2005, Third Edition.
Chapter 5 Menus, Common Dialog Boxes, and Methods Programming in C#.NET © 2003 by The McGraw-Hill Companies, Inc. All rights reserved.
Visual Basic 2005 CHAPTER 2 Program and Graphical User Interface Design.
The Fundamentals of Using Windows 95. Windows 95 ã operating system that performs every function necessary for the user to communicate and control computer.
XP New Perspectives on Windows XP Tutorial 1 Exploring the Basics.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Basic Controls & Properties Chapter 2. Overview u VB-IDE u Basic Controls  Command Button  Label  Text Box  Picture Box u Program Editor  Setting.
COS240 O-O Languages AUBG, COS dept Lecture 33 Title: C# vs. Java (GUI Programming) Reference: COS240 Syllabus.
Chapter One An Introduction to Visual Basic 2010 Programming with Microsoft Visual Basic th Edition.
BIL528 – Bilgisayar Programlama II Introduction 1.
XP New Perspectives on Microsoft Windows 2000 Professional Windows 2000 Tutorial 1 1 Microsoft Windows 2000 Professional Tutorial 1 – Exploring the Basics.
Lecture 6: Introduction to Graphical User Interfaces (GUIs)
CHAPTER TWO Creating Simple Visual Basic.NET Windows Applications.
Chapter Two Creating a First Project in Visual Basic.
Joe Hummel, PhD Dept of Mathematics and Computer Science Lake Forest College
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Visual Basic 2005 CHAPTER 2 Program and Graphical User Interface Design.
Visual C# 2012 How to Program © by Pearson Education, Inc. All Rights Reserved.
Introduction to Visual Studio & GUI Programming Prepared by: Ahmad Ramin Rahimee Assistant Professor ICTI.
Chapter 2 – Introduction to the Visual Studio .NET IDE
1 Creating Windows GUIs with Visual Studio. 2 Creating the Project New Project Visual C++ Projects Windows Forms Application Give the Project a Name and.
Visual C# 2012 How to Program © by Pearson Education, Inc. All Rights Reserved.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Microsoft Visual Basic 2010 CHAPTER TWO Program and Graphical User Interface Design.
Michael Olivero Microsoft Student Ambassador for FIU Pick up your free drink below to your left. 1 per person please.
Visual Basic.NET Comprehensive Concepts and Techniques Chapter 3 Building an Application in the Visual Basic.NET Environment.
1 Windows Forms II Chapter RadioButton / GroupBox Controls Used to solicit a multiple choice input. Radio buttons work as a group. Selecting one.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
XP New Perspectives on Microsoft Windows XP Tutorial 1 1 Microsoft Windows XP Creating a Web Site Tutorial 1.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Joe Hummel, PhD Dept of Mathematics and Computer Science Lake Forest College Lecture 4: Intro to GUIs and the.
 You won’t write a single line of program code.  Instead, you’ll use visual programming techniques.  Visual Studio processes your actions (such as mouse.
COMPUTER PROGRAMMING I Apply Procedures to Develop List Box and Combo Box Objects.
GUI Programming Prepared by: Ahmad Ramin Rahimee Assistant Professor ICTI.
Chapter 1: An Introduction to Visual Basic .NET
Visual Basic .NET BASICS
Chapter Topics 15.1 Graphical User Interfaces
Chapter 2 – Introduction to the Visual Studio .NET IDE
Program and Graphical User Interface Design
Chapter 1: An Introduction to Visual Basic 2015
Program and Graphical User Interface Design
Microsoft Windows 2000 Professional
Chapter 15: GUI Applications & Event-Driven Programming
6. WinForms 2003 C# GUI - Basics.
Presentation transcript:

C# GUI - Basics

Objectives.NET supports two types: WinForms, traditional, desktop GUI apps. WebForms – newer, for Web apps. Visual Studio.NET supports quick, drag-and-driven development Event-driven Code-behind programming Generated code

Simple Idea: Event-driven applications –individual user actions are translated into “events” –events are passed, one by one, to application for processing –this is how most GUIs are programmed event GUI App

GUI-based events Mouse move Mouse click Mouse double-click Key press Button click Menu selection Change in focus Window activation etc.

Code-behind Events are handled by methods that live behind visual interface –known as "code-behind" –our job is to program these methods…

Call-backs Events are a call from object back to apps How is connection made? –setup by code auto-generated by Visual Studio

Basic operation modes Visual Studio operates in one of 3 modes: 1)design 2)run 3)break When in doubt, check the title bar of VS… designrunbreak

Example: a windowing application GUI apps are based on the notion of forms and controls –a form represents a window –a form contains 0 or more controls –a control interacts with the user

Run mode

Break mode

WinForms Implement Framework Class Libraries Portable to any.NET platform FCL acts as a layer of abstraction –Common Language Runtime –separates WinForm app from underlying platform System.Windows.Forms.Form CLR Windows OS instance of FCL class object

Form properties Form properties typically control visual appearance: – AutoScroll – BackgroundImage – ControlBox – FormBorderStyle (sizable?) – Icon – Location – Size – StartPosition – Text (i.e. window's caption) – WindowState (minimized, maximized, normal) Form1 form; form = new Form1(); form.WindowState = FormWindowState.Maximized; form.Show();

Form methods Actions you can perform on a form: – Activate :give this form the focus – Close :close & release associated resources – Hide :hide, but retain resources to show form later – Refresh :redraw – Show :make form visible on the screen, & activate – ShowDialog : show modally form.Hide();. form.Show();

Form events Events you can respond to: –bring up properties window –double-click on event name – Load :occurs just before form is shown for first time – Closing :occurs as form is being closed (ability to cancel) – Closed :occurs as form is definitely being closed – Resize :occurs after user resizes form – Click :occurs when user clicks on form's background – KeyPress : occurs when form has focus & user presses key

Example Ask user before closing form: private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e) { DialogResult r; r = MessageBox.Show("Do you really want to close?", "MyApp", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (r == DialogResult.No) e.Cancel = true; }

Controls User-interface objects on the form: –labels –buttons –text boxes –menus –list & combo boxes –option buttons –check boxes –etc.

Abstraction Like forms, controls are based on classes in the FCL: –System.Windows.Forms.Label –System.Windows.Forms.TextBox –System.Windows.Forms.Button –etc. Controls are instances of these classes object

Who creates all these objects? Who is responsible for creating control instances? –code is auto-generated by Visual Studio –when form object is created, controls are then created…

Naming conventions Set control's name via Name property A common naming scheme is based on prefixes: – cmdOK refers to a command button control – lstNames refers to a list box control – txtFirstName refers to a text box control

Labels For static display of text –used to label other things on the form –used to display read-only results Interesting properties: – Text :what user sees – Font :how s/he sees it

Command buttons For the user to click & perform a task Interesting properties: – Text :what user sees – Font :how he/she sees it – Enabled :can it be clicked Interesting events: – Click :occurs when button is "pressed"

Text boxes Most commonly used control! –for displaying text –for data entry

Text box properties Basic properties: – Text :denotes the entire contents of text box (a string) – Modified :has text been modified by user? (True / False) – ReadOnly : set if you want user to view text, but not modify Do you want multi-line text boxes? – MultiLine :True allows multiple lines of text – Lines :array of strings, one for each line in text box – ScrollBars :none, horizontal, vertical, or both

Text box events Interesting events: – Enter, Leave :occurs on change in focus – KeyPress :occurs on ascii keypress – KeyDown, KeyUp :occurs on any key combination – TextChanged :occurs whenever text is modified – Validating and Validated Validating gives you a chance to cancel on invalid input

Customer[] customers;.. // create & fill array with objects.... // display customers in list box foreach (Customer c in customers) this.listBox1.Items.Add(c); List Boxes Great for displaying / maintaining list of data –list of strings –list of objects (list box calls ToString() to display) // display name of selected customer (if any) Customer c; c = (Customer) this.listBox1.SelectedItem; if (c == null) return; else MessageBox.Show(c.Name);

Just the tip of the iceberg… Menus, dialogs, toolbars, etc. Thousands of additional controls –.NET and ActiveX –right-click on Toolbox –"Customize Toolbox"

Summary Event-driven programming is very intuitive for GUI apps Forms are the first step in GUI design –each form represents a window on the screen –form designer enables drag-and-drop GUI construction Users interact primarily with form's controls –labels, text boxes, buttons, etc. –implies that GUI programming is control programming