Windows Forms Winstrand Development

Relevanta dokument
Objektorienterad programmering Föreläsning 15. Grafiska användargränssnitt (GUI Graphical User Interface)

PROGRAMMERING A VB 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL BASIC

Programmering A C# VT Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson

Malmö högskola 2007/2008 Teknik och samhälle

Programmeringsteknisk översiktskurs för yrkeshögskoleprogram

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Objektorienterad Programmering (OOP) Murach s: kap 12-16

PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C#

Metoder (funktioner) Murach s: kap Winstrand Development

Övning. Introduktion och förberedelser

Laboration 1 Introduktion till Visual Basic 6.0

3.5 Visuell programmering

Exceptions (undantag) Murach s: kap 7

Datorövning 1. int sgd(int m, int n) { int rest; while ( n!= 0 ) { rest = m % n; m = n; n = rest; return m;

PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C#

Beskrivning av gesällprov RMI Chat Mikael Rydmark

ASP.NET Thomas Mejtoft

Paneler - VCPXX.2. Programmeringsmanual för VCP-paneler. Revision 2

Lektion 2, Grundläggande funktioner i ASP.NET

WINDOWS PRESENTATION FOUNDATION LEKTION 1

Kort om klasser och objekt En introduktion till GUI-programmering i Java

Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets

Vad utmärker ett bra användargränssnitt?

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

Föreläsnings 11 - GUI, Händelsestyrda program, MVC

Objektorienterad programmering Föreläsning 2

Komponenter med COM (och COM+/VC++ 7.0)

Sidrenderingsmodellen

Gissa ordet, tutorial

ITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter

Visa/Dolj knappar i Webeditor 8

Grafiska användargränssnitt i Java

Övning: Arbeta med Azure Explorer

Android översikt. TDDD80 Mobila och sociala applikationer

Vad utmärker ett bra gränssnitt?

PROGRAMMERINGSTEKNIK TIN212

Monitor Pro V7.x SCADA. Förstå och skapa symboler

LEX INSTRUKTION LEX LDAP

1. Definiera klassvariabel. 2. Instansvariabel för klass. Selektera klass i Browsern och tryck på statics. Definiera protokollnamn, Protocol->Add...

Räkna med ASP.NET Web Forms

Lycka till! TENTAMEN: Objektorienterade applikationer. Läs detta! 1 (6) Tentamen

Frekvenstabell över tärningskast med C#

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)

Laboration 1. Utgåva 1 Gäller från

Grafiska användargränssnitt i Java

Föreläsning 15 (16) Historik (java.awt) Historik (javax.swing) Introduktion till Swing

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

IT-system. BUP Användarmanual

Bo Skön(t)s Hotellbokningssystem

Lab5 för prgmedcl04 Grafik

Malmö högskola 2007/2008 Teknik och samhälle

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015

Handbok Spectacle. Boudhayan Gupta Boudhayan Gupta Översättare: Stefan Asserhäll

Labb 3: ASP.NET 4.5 Anpassningar av användargränssnittet: Master Pages, Teman, och Kontroller

Del 1: Skapa konto i Exchange

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 2

Ett enkelt Androidspel, tutorial

DUGGA: Objektorienterade applikationer. Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad.

Design och konstruktion av grafiska gränssnitt

LÄR DIG ANVÄNDA DIN MAC. från grunden! Nu med Mac OS X Leopard! Harry Peronius

Kom igång med Web Editor

Grafiska användargränssnitt i Java

Övning: Skapa en ny regel

Telia Connect för Windows

Language Integrated Query, LINQ, och databaser

Lab1 Introduktion. 1 Syfte. 2 Innehåll Win32API Skapa trådar Kritiska sektioner Mailslothantering. 3 Förberedelse & Tips

PDA-applikationer med.net

Så här skriver du ditt första program i C++

Simulera med ModelSim

Sync Master startas via Task Scedule (schemaläggaren). Programmet kan köras på servern utan att någon är inloggad på servern.

Skapa och godkänna mål och delmål för din kurs

Objektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016

Webbformulärverktyg i InfoGlue.

Lathund för publicering i KI Commons wikitjänst

Ett enkelt Androidspel, tutorial

Fortsättningskurs i programmering F 5. GUI händelsehantering - undantagshantering Hugo Quisbert AWT. Paket för hantering av grafik

KARLSTADS UNIVERSITET 12/8/09 informatik & datavetenskap Johan Öfverberg, Kerstin Andersson Laboration 4, ISG A04 och DVG A08 HT-09

Visual Basic, en snabbgenomgång

Instruktion Programmeringsapp och gränssnitt

TUTORIAL 3: ATT STARTA ETT NYTT PROJEKT, IMPORTERA ELLER DIGITALISERA MATERIAL, SAMT SORTERA DET.

Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.

Författare: Juha Söderqvist IT-GUI. Version 1.0. Datum

Filbindningar. Mike McBride Översättare: Stefan Asserhäll

Detta dokument skall ge en kortfattad introduktion till Jasmine installationen vid DSV.

Revu handledning: Spara markeringsverktyg i Verktygslådan

FactoryCast HMI. Premium & Quantum PLC. MySQL Server och FactoryCast HMI databastjänst

Lab 5: ASP.NET 2.0 Site Navigation

ASP.NET Web Forms. Copyright Mahmud Al Hakim Vad är Web Forms?

Laboration 15 Grafiskt användargränssnitt

Ibruktagande av Statistikcentralens gränssnittstjänster i QGISprogrammet

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215

Dreamweaverskolan, Jump Meny - Formulär - Forms

7,5 högskolepoäng. Objektorienterad systemutveckling I Provmoment: Ladokkod: 21OS1B Tentamen ges för: Lycka till! /Peter & Petter

Diagnostiskt Prov. Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas.

Simulering med ModelSim En kort introduktion

Macromedia. Flash 8 Grundkurs.

Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna

Macromedia Flash MX 2004

Guide för behörighetssystemet i Matilda

Transkript:

2013-01-23 1 Winstrand Development

Användargränssnitt Hittills har vi skapat program för kommandoraden. Den bakomliggande koden fungerar som den ska, men vi upptäcker snabbt att programmen är begränsade då vi bara läser in och skriver ut text i form av strängar. Moderna program använder sig av ett grafiskt användargränssnitt (Graphical User Interface, GUI) Winstrand Development 2013-01-23 2

Grafiska användargränssnitt I ett GUI har kan vi bygga upp applikationen av flera grafiska element såsom textrutor, knappar och menyer Label TextBox Read-Only TextBox Button Winstrand Development 2013-01-23 3

Grafiska användargränssnitt Fördelen med GUI är att Vi får en överblick av programmet Vi kan trycka på knappar för att låta någonting hända i kommandotolken måste man skriva text Användandet av programmet kan bli mer intuitivt vi kan gruppera liknande kontroller. Programmet avslutas när användaren vill man trycker på krysset eller går via menyer. Winstrand Development 2013-01-23 4

I.NET-ramverket finns som innehåller grafiska komponenter. Med Visual Studio kan vi designa våra program genom att dra-och-släppa (dragand-drop) komponenter precis så som vi vill ha dem. Koden för de grafiska komponenterna genereras automatiskt Winstrand Development 2013-01-23 5

Skapa ett projekt Ett nytt projekt skapas via menyvalen File New Project Välj Application i dialogen. Winstrand Development 2013-01-23 6

Designläge Från fönstret Toolbox kan vi välja de komponenter vi vill ska ingå i applikationen Vi drar in dessa i designfönstret och kontrollen läggs på vald plats i vår form Verktygslådan Designfönstret Kontrollens Inställning Winstrand Development 2013-01-23 7

Verktygslådan Toolbox Innehåller de grafiska komponenter som kan användas för att bygga användargränssnittet Öppnas i menyn View Toolbox Från denna drar man komponenterna till designfönstret Winstrand Development 2013-01-23 8

Verktygslådan Toolbox De grundläggande kontrollerna är Button (knapp) en tryckknapp, vi förväntar oss att någonting ska hända Label ( etikett ) text som inte kan ändras av användaren. TextBox text som kan ändras av användaren Winstrand Development 2013-01-23 9

Inställningar Properties När man väljer en kontroll i designläget får man i fönstret Properties upp de inställningar som kan göras på valda kontrollen Inställningarna är olika för varje kontroll TextBox Button Winstrand Development 2013-01-23 10

Inställningar Properties Sortera på kategori eller namn Vald inställning gråmarkeras Information om vald inställning (i detta fallet Text) Winstrand Development 2013-01-23 11

Vanliga Properties De två vanligaste inställningarna som används för kontroller är Name Namnet på kontrollen. Används när vi ska komma åt kontrollens innehåll i koden. Text Den text som visas i kontrollen. I en TextBox är det den text som användaren kan skriva in Winstrand Development 2013-01-23 12

Vanliga Properties Name Är sättet vi identifierar kontrollen. Kontroller är även de variabler inställningen Name är alltså kontrollens variabelnamn Visual Studio tilldelar ett unikt namn till varje kontroll De kontroller som man använder i kod ska namnges så vi lättare kan identifiera denna (se nästa sida) Används inte kontrollen i koden behöver vi inte ändra namnet (vanligt med Label) Winstrand Development 2013-01-23 13

Vanliga Properties Name När vi namnger variabler finns två huvudgrupper Prefix - tre bokstäver långt för att indikera typ av kontroll Suffix Skriv ut hela kontrollens typ Namngivningsexempel Kontroll Prefix Suffix (hela typens namn) TextBox txtinfo (txt-) infotextbox Label lblinfo (lbl-) infolabel Button btninfo (btn-) infobutton Winstrand Development 2013-01-23 14

Vanliga Properties Name Hur man namnger kontroller är även detta företagsspecifikt följ dessa i första hand Vanliga prefix är: Button btn CheckBox chk Image img Label lbl ListControl lst Panel pnl RadioButton opt TextBox txt Winstrand Development 2013-01-23 15

Vanliga Properties Text Propertyn Text är av typen string. Vi kan ändra denna samtidigt som programmet körs Vanligen använder man en TextBox för att skriva ut meddelanden. Tänk på att det är TextBox.Text som är strängen vi skriver ut. txtresult.text = "En sträng"; Winstrand Development 2013-01-23 16

Vanliga Properties Text I programmet nedan finns 10 kontroller (plus den Form kontrollerna ligger i) där alla har olika värde på propertyn Text Kontrolltyp Text Label Subtotal Discount Percent Discont Amount Total TextBox 200 TextBox (read only) 10,0% 20,00 kr 180,00 kr Button Calculate Exit Form Invoice Total Winstrand Development 2013-01-23 17

Arbeta med 2013-01-23 18 Winstrand Development

Arbeta med Events -applikationer är eventstyrda. Detta innebär att applikationen väntar på att en händelse event ska inträffa Till skillnad från ett linjärt, synkront, programflöde som konsollapplikationer, sker events asynkront. Att programmet är asynkront betyder rent praktiskt att vi inte vet när en händelse kommer att inträffa Winstrand Development 2013-01-23 19

Arbeta med Events Det vanligaste eventet som genereras är det som inträffar när vi trycker på en knapp. Det är eventet som anropar koden metoden som ska utföras när vi t.ex. trycker på en knapp. Metoden som tar hanterar eventet kallas för event handler eller händelsehanterare. Winstrand Development 2013-01-23 20

Arbeta med Events I Visual Studio finns det flera olika sätt att generera ett event. Dubbelklicka på en kontroll för att skapa det typiska eventet för kontrollen (t.ex. när man trycker på en knapp) Välja i Property-fönstret vilken eventhanteraren som ska användas Koda eventet samt eventhanteraren själv Events är kopplingen mellan det grafiska gränssnitt användaren ser och själva logiken som ska köras. Winstrand Development 2013-01-23 21

Arbeta med Events Exempel på när en händelse genereras Detta är knappens event handler //Inuti kodfilen till vår form private void btnconvert_click(object sender, EventArgs e) { //Do text transformation txtresult.text = txtuserinput.text.toupper(); } Winstrand Development 2013-01-23 22

Arbeta med Events Vi kan komma åt en kontrolls events via Properties-fönstret Blixten som symboliserar events Eventet som genereras när vi klickar på knappen Winstrand Development 2013-01-23 23