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

Relevanta dokument
Objektorienterad programmering

Objektorienterad programmering Föreläsning 6. Mer om klasser och typer Namnrymder Inkapsling Synlighet Statiska variabler Statiska metoder

Objektorienterad programmering Föreläsning 20

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

Objektorienterad programmering Föreläsning 12. Copyright Mahmud Al Hakim

Objektorienterad programmering Föreläsning 8. Copyright Mahmud Al Hakim Agenda (halvdag)

Windows Forms Winstrand Development

Objektorienterad programmering

Objektorienterad programmering Föreläsning 10. Copyright Mahmud Al Hakim Sorteringsalgoritmer

Objektorienterad programmering Föreläsning 5

Objektorienterad programmering Föreläsning 2

Lab5 för prgmedcl04 Grafik

Objektorienterad programmering D2

Introduktion till arv

Objektorienterad programmering

OOP Objekt-orienterad programmering

Innehåll Introduktion... 3 InteractiveScene.config... 3 Scener <scenes>... 3 Typsnitt <fonts>... 3 Övergångar <transitions>...

Objektorienterad programmering Föreläsning 9. Copyright Mahmud Al Hakim Agenda (halvdag)

Lära känna skrivbordet

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

Objektorienterad programmering Föreläsning 11. Copyright Mahmud Al Hakim

Agenda. Objektorienterad programmering Föreläsning 13

PROGRAMMERINGSTEKNIK TIN212

Föreläsning 7. Grafiska användargränssnitt

Anpassning av Windows XP

Resurscentrum för kommunikation Dako SymWriter 2. Minimanual

Easy Planning blir med dessa funktioner ett mycket kraftfullt verktyg för planering. Vi hoppas att våra kunder ska få stor nytta av programmet.

Clicker 5. Lathund kring de vanligaste och mest grundläggande funktionerna för att komma igång med Clicker. Habilitering & Hjälpmedel

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Stefan Nilsson

Macro Key Manager Användarhandbok

Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

Patrik Calén

Övningar Dag 2 En första klass

Objektsamlingar i Java

Region Skåne Verksamhetsledningssystem (VLS)

Färgklövern. Färgklövern är gjord 1998 i samarbete mellan Datateket i Linköping och Hargdata AB i Linköping.

1. FORMULÄR. A. Skapa formulär

1284_omslag.qxd :13 Sida 1 ECDL START OFFICE 2003 Allmän IT Windows XP Word 2003 Outlook 2003

Laboration 1 Introduktion till Visual Basic 6.0

Instruktion arbeta med rapportmallen

Elisabeth Bejefalk IT-Assistent Avesta kommun

Kapitel 5 Stolpe, balk och balkongräcke... 3

Switch Driver 5. Programvara för Radio Switch, JoyBox och JoyCable. Sensory Software

Scribus fortsättning

6. Nu skall vi ställa in vad som skall hända när man klickar på knappen samt att markören skall ändra sig till en hand när markören är på knappen.

Ett digitalt läromedel i artkunskap för åk 3-4. Lärarhandledning

ViTex snabbguide. 1. Inläsning till ViTex från scanner eller PDF Läs in text via scanner Läs in text från en JPEG-bild eller ett PDF-dokument

Manual Nedladdningsbara klienten NLK

Resurscentrum för kommunikation Dako SymWriter. Minimanual

Snabbguide i handhavande av. PGC TWD RC-Series Reciprocator Control System. Styrning av vertikalrörelse hos 2 pistolförare

Objektorienterad programmering i Java

Lathund för att arbeta med pdf

PROGRAMMERING A VB 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL BASIC

KeyControl Sök person, nyckel eller cylinder

Får jag be om ordet!

Handbok Dumpa skärmen

Dagens program. Programmeringsteknik och Matlab. Vad är arv? Vi ärver från GregorianCalendar. Kan vi bygga vidare på existerande klasser?

Planering av egen cup - Steg 4: Under cupdagarna

ZoomText 10.1 Snabbguide Tillägg

Lathund Spåra ändringar

Grafiska användargränssnitt i Java

Microsoft Publisher. Laborationskompendium för digital behandling av publikationer. Detta exemplar tillhör:

Seriehantering. [En enkel guide för hur du som serieadministratör använder SVEMO TA.]

Guide för pdf-formulär

Teckentavlor. Inställning av styrsätt med programvalsratten

Migrera till Word 2010

Bildslinga Användarguide

Mikromarc 2 Meddelandecenter

ClaroReadPro Kom igång med talsyntesen

Sida Kapitel 5 Stolpe, balk och balkongräcke... 3

PROGRAMMERING A VC# 2008 EXPRESS UTVECKLINGSVERKTYGET VISUAL C#

Grafiska användargränssnitt i Java

VIDA ADMIN LATHUND INNEHÅLL

Handbok Fyrkanter. Matt Williams Granskare: Eugene Trounev Översättare: Stefan Asserhäll

Att bekanta dig med NetBeans programmeringsmiljö och skriva några enkla program med programmeringsspråket Java.

Copyright 2008 Pausit AB medföljer programvaran pausit. Pausit version 1.2 Användarmanual

SPEECHMIKE TM 2.2 PROGRAMVARUHANDBOK PHI

En guide till FirstClass

Manual. Logga in. OBS! Kontrollera så att korrekt epostadress finns ifyllt. Ändra inga andra uppgifter!

Komma igång med Eventor

Släktprogrammet Lindahl från Galagök

Användarmanual till AD OnLine

MONITOR-till-Tibnor. Med Tibnor som leverantör kan du använda samma funktionalitet för följande händelser:

CADMUM i Göteborg AB. Version AutoCAD Mechanical 2000 PP

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

Kortkommandon Allmänna i Windows 7

Handbok KMouseTool. Jeff Roush Översättare: Stefan Asserhäll

2. Komma igång Skapa grupper och elever Skriv också ut sidan 13 så att eleverna har en snabbguide till programmet.

INSTALLATION AV VITEC MÄKLARSYSTEM. Studentversion

TENTAMEN I. OBJEKTORIENTERAD PROGRAMMERING för Z1. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

Låt ipad bli fjärrkontroll för din Mac

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

Att genomföra ett e-postutskick till klubbens medlemmar

Agenda (obs! halvdag)

Arv och Grafiska Användargränssnitt

Fjärrkontroll (endast vissa modeller)

Kom igång. Version 3

Visioneer PaperPort DeLuxe 6.1 med Form Typer

Transkript:

Objektorienterad programmering Föreläsning 15 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Agenda Grafiska användargränssnitt (GUI Graphical User Interface) Standardklassen (Control) System.Windows.Forms.Control Att dölja kommandofönstret! Klassen Label Att förankra och docka komponenter Händelser Klassen Button 1

Grafiska användargränssnitt För att det skall vara enkelt att konstruera grafiska program finns det i C# ett antal standardklasser vilka man kan använda för att enkelt skapa grafiska komponenter som kan ingå i programmen. Dessa klasser är indelade i två huvudkategorier 1. Fönsterkomponenter (Controls) 2. Verktygskomponenter (Toolstrips) Fönsterkomponenter (Controls) Fönsterkomponenter är klasser som beskriver grafiska komponenter som antingen är självständiga fönster på skärmen (t.ex. klassen Form) eller som kan placeras direkt i sådana fönster (t.ex. klassen Label). Fönsterkomponenter kallas controls eftersom dessa är subklasser till superklassen Control. Klassen Control innehåller generella egenskaper som t.ex. storlek och färger. 2

Några subklasser till Control Control Label ButtonBase ScrollableControl GroupBox TextBoxBase Button ContainerControl TextBox CheckBox Form RadioButton Panel ToolStrip Klassen Control Några egenskaper Name komponentens namn Text den text som är kopplad till komponenten Font typsnitt Size storlek (bredd x höjd) MinimumSize minimal storlek Location komponentens startpunk (left x top) BackColor bakgrundsfärg AutoSize true om komponenten automatiskt skall anpassa sin storlek (lagom storlek) 3

Klassen Form - Exempel Klassen Fönster ärver från standardklassen Form Klassen Size har en konstruktor som tar emot två parametrar bredd och höjd storleken anges i pixlar Color är en struct som finns i Drawing Starta programmet 4

Att dölja kommandofönstret! För att dölja kommandofönstret när du kör grafiska komponenter 1. Gå till projektets egenskaper 2. Fliken Application 3. Välj Windows Application från Output type Klassen Label En label (etikett) kan visa antingen en text eller en bild eller både och. Några egenskaper: TextAlign Image: ImageAlign BorderStyle placering av text refererar till en bild som visas placering av bilden i etiketten ramens utseende 5

Skapa objekt av klassen Label Två instansvariabler av typen Label finns nu i klassen Fönster Label Exempel Detta skrivs t.ex. i konstruktorn Viktigt Här lägger vi etiketten i fönstret! 6

Att lägga till barnkomponenter Man kan utnyttja en fönsterkomponent som behållare (containter) och lägga till andra s.k. barnkomponenter i den. Barnkomponenter placeras i någon av subklasserna till ScrollableControl t.ex. Form. Varje fönsterkomponent har en lista med namnet Controls vilken innehåller referenser till komponentens barnkomponenter. Om vi t.ex. har ett objekt, Etikett, som är av klassen Label så kan vi placera objektet i behållaren med hjälp av metoden Add() Controls.Add(etikett); Placera en bild i en Label Point är en struct som finns i Drawing och har en konstruktor som tar emot två parametrar avstånd från vänster och avstånd från topp 7

Att förankra komponenter Om man ändrar storleken på fönstret så behåller komponenterna avståndet till den övre och den vänstra sidan. Komponenterna är förankrade mot dessa sidor. Egenskapen Anchor bestämmer hur en komponent skall vara förankrad mot föräldrarkomponenten. Man kan förankra en komponent mot en eller flera sidor. Anchor Exempel Detta händer nu om man ändrar fönstrets bredd Etiketten är förankrad nu mot den högra och den övre sidan 8

Att docka komponenter Ett alternativt till att förankra en komponent är att använda egenskapen Dock för att docka komponenten. Man anger en sida som komponenten skall läggas intill. Komponenten kommer då att automatiskt anpassa sin storlek så att den fyller ut hela denna sida. OBS! Man kan inte kombinera egenskaperna Anchor och Dock. De utesluter varandra. Dock Exempel Tips! Testa värdet DockStyle.Fill 9

Händelsestyrda program Ett program med grafiskt användargränssnitt är händelsestyrt! Exekveringen av ett händelsestyrt program sker i två faser! 1. Initieringsfasen Tråden som kör Main deklarerar och initierar de olika grafiska komponenter som skall användas av programmet. Här registreras s.k. händelsehanterare (event handlers). 2. Väntefasen Programmet ligger och väntar på att händelser skall inträffa. T.ex. klicka med musen eller trycka på någon knapp. När en händelse inträffar anropas den händelsehanterare som har registrerats för att ta hand om händelsen! Händelsehanterare En händelsehanterare är en metod med två parametra En referens till den komponent i vilken händelsen uppstod Referens till ett objekt till klassen EventArgs som ibland innehåller mer info om händelsen 10

Några händelser (events) Click DoubleClick Enter Leave MouseEnter MouseLeave klicka på komponenten dubbelklicka komponenten blir vald komponenten förlorar fokus muspekaren flyttas till komponenten muspekaren flyttas från komponenten Fullständig lista på alla events finns här: http://goo.gl/e207wp Events Exempel 1 Programmet SoundTest (Click) sidan 322 11

Events Exempel 2 Programmet SoundTest (MouseEnter och MouseLeave) sidan 323 UseMnemonic (snabbtagenter) Med hjälp av egenskapen UseMnemonic (om satt till true) kan man använda snabbtagenter. Alt + en valfri tangent aktiverar en händelse. Tangenten bestäms genom att lägga in tecknet & i knappens text. 12