Sid 1 CD5250 Daniel Flemström MDH/IDT Windowsprogrammering.

Slides:



Advertisements
Liknande presentationer
Citat och utdrag ur föreläsning
Advertisements

IFS TRAINER © 2011 IFS. MARIA ASSARSJÖ GULLBERGS STRANDGATA 15, GÖTEBORG +46-(0) Maria in 3 bullets: 
Next previous Björn Eiderbäck NADA, KTH Innehåll Klassdiagram i mer detalj Visibility och modifierare (vilka.
Social TV Peter Grufman (VD Comspace).  Social TV är just nu det hetaste området på den Amerikanska venture capital marknaden  De stora aktörerna.
Anneli och Christians Datorskola
Click here to start Demo in English Klicka här för att starta Demo på Svenska It’s all about efficiency.
TFS – Maximera nyttan, mer än bara versionshantering
Nyinstallerad Webinfo •I Central parameters skapa parametern Statlogger och ge value 1 Logga endast vissa sidor genom att skapa parametern i PageId.
The Innovative Integration Suite
Stefan Möller OOP F16:1 OOP Objekt-orienterad programmering Föreläsning 16 Grafiska användargränssnitt, GUI Ytor Komponenter Layout-managers Lyssnare.
1 Windows programmering (2) Borland C++ Builder 4/5 Modsoft Ab Kent Westerholm.
Next previous Frameworks. Konstruktion av fönster, gränssnitt och användning av grafik i Java OOMPA 2000 Föreläsning 15 Innehåll, kort om: Frameworks Grafik.
Förslag med resultat från HistoryKonfigurera flera olika Search Providers Snabbt lägga till Search Provider Visuell sök med bilder i resultatet.
En "djyp" dykning I SharePoint's sök tjänst
Föreläsning 3 Lista Array/länkad lista Lista implementerad som länkad lista Inlämningsuppgifter.
5. Adjektiv och adverb (Adjective and adverbs)
Objektorienterad utveckling Lektion 2 Objekt, överlagring, överskuggning, klasshierarkier och dynamisk bindning KTH Peter Mozelius.
PC-teknik Repetition enligt önskemål som inkommit via mail. (täcker alltså inte alla moment i kursen)
William Sandqvist Programmet onoffred.c.
Föreläsning 2 Datastrukturer Abstrakta datastrukturer Stack
2D1311 Programmeringsteknik med PBL Föreläsning 5 Skolan för Datavetenskap och kommunikation.
Microsofts Produkter Mikael Nyström Senior Executive Consultant - TrueSec MVP Windows Server – Setup/Deployment
Förstudie 2. Design 3. Migrering 4 Analys av befintlig miljö –Microsoft Assessment and Planning (MAP) kan användas för att analysera sin miljö.
Guide för SA Benefits Calculator
Föreläsning 8 Appletprogram/fristående grafiska program Rita linjer, rektanglar mm Skriva text Byta färg Appletprogram html.
Java Nätverks API URL sockets.
Upplysning C++ / Sven "-E" Rosvall1 C++ för den som tror sej kunna C++ Sven Rosvall
Exception Handling Kapitel 9. Agenda Exceptions try, throw and catch Skapa en egen exception-klass Multipla throw / catch Slänga vidare en exception Olika.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Kapitel 13: I/O-system.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Objektbaserad programmering –Grundläggande om klasser och objekt – (Arv får vänta)  Iden med klasser.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Konstruktor Ser till att objektets data är korrekt initierade MinKlass::MinKlass(); MinKlass::MinKlass(int.
Anders Sjögren Selektion i C ”vägval” if och switch - satserna.
William Sandqvist Funktion som byter plats på två variabler /* swap1.c first attempt at a swaping function */ /* from Stephen Prata, C Primer.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT C++ - förbättrat C?  Procedurellt program ser ut som C: sekvens, selektion, iteration  /* kommentar.
Sid 1 CD5250 OOP med C++ Daniel Flemström MDH/IDT CD5250 OOP med C++
Programmering i C# 3. Klasser.
Who används för att fråga efter personer
Sid 1 CD5250 OOP med C++ Daniel Flemström MDH/IDT Lite OOA/OOD.
Next previous Föreläsning ii - Mer om Java bla this och konstruktorer Av Björn Eiderbäck Adress: Rum 1641, 6tr NADA Osquars Backe.
Metodik för problemlösning Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling Fredric Ragnar.
Några småsaker switch break, continue, goto Kommentarer.
TÄNK PÅ ETT HELTAL MELLAN 1-50
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Generiska algoritmer Kan användas på containertyper och arrays Använder iteratorer Implementerar.
OSD LIT/ZTI – Bending the rules Johan Arwidmark och Mikael Nyström.
HUMAN-CENTERED SYSTEMS ::: DEPT. OF COMPUTER & INFO. SCIENCE Introduktion till Director Jody Foo.
Mitt första Java program Mahmud Al Hakim Copyright, Mahmud Al Hakim, 1.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
Objektorienterad Programmering i C++ I
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Tabeller -Villkorssatser -Repetitionssatser.
Sid 1 CD5250 Daniel Flemström MDH/IDT COM Extremely Rough Overview.
Sid period2CD5250 OOP med C++ Daniel Flemström MDH/IDT Abstrakta Containertyper Vilka finns fördefinierade? Vad kan dom? #pragma warning(disable:4786)
Anders Sjögren Selektion i C ”vägval” if och switch - satserna.
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Mats Björkman Mälardalens högskola
Föreläsning 13 Appletprogram/fristående grafiska program Arv Rita linjer, rektanglar mm Skriva text, byta färg Appletprogram & HTML Grafiska användargränssnitt.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Lite OOA/OOD.
1 Föreläsning 11 Grafisk användargränssnitt med Tkinter.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Undantag - eng. Exceptions Viktig del av klassbiblioteksdesign “Hoppa direkt ut med felkod” class.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Abstrakta Containertyper Vilka finns fördefinierade? Vad kan dom?
OOP F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Funktionsmall template void myfunc(Type * arr, int n) { // kod; // objekt av typ Type kan deklareras.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT Konstanter float pi; const float pi = ; float *pip = π //Kompileringsfel! const float.
William Sandqvist Funktionsbibliotek När man utvecklat en funktion så långt att den är "färdigutvecklad" kan man lika gärna spara den på.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Lab Contact 1  Lab Assistants:  Meng Liu, Group B  Sara Abbaspour, Group A
Extremely Rough Overview
Presentationens avskrift:

Sid 1 CD5250 Daniel Flemström MDH/IDT Windowsprogrammering

Sid 2 CD5250 Daniel Flemström MDH/IDT DOS Console Application main(..) { } Asd das asdlk Lasdkasld dldld Dlaieieiei ddd ”Console.lib” Skapar fönstret myMain.cpp main(..) { } main(..) { } Skriver ut 4 2 cout 5 cin 1.WinMain inuti ”console.lib” anropas 2.Fönstret Skapas 3.Din Main anropas 4.Cout skrivs ut till fönstret. 5.Tangentinmatningar kommer till cin 3 Myprog.exe

Sid 3 CD5250 Daniel Flemström MDH/IDT Windows Application WNDCLASS windowStyle WndProc hInstance icon background... WinMain { Register Class CreateWindow MessageLoop } WndProc() { Switch.. } myWinApp.EXE”Windows” message dispatch

Sid 4 CD5250 Daniel Flemström MDH/IDT WinMain int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { WNDCLASSEX wcex; wcex.style= CS_HREDRAW | CS_VREDRAW; wcex.lpfnWndProc= (WNDPROC)WndProc; wcex.hIcon= LoadIcon(hInstance, (LPCTSTR)IDI_KILLERAPP); wcex.hCursor= LoadCursor(NULL, IDC_ARROW);... RegisterClassEx(&wcex); CreateWindow(....) while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); }

Sid 5 CD5250 Daniel Flemström MDH/IDT WndProc LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_TIMER: game.OnTimer( wParam, lParam); break; case WM_CHAR: game.OnChar( wParam, lParam); break;... case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; }

Sid 6 CD5250 Daniel Flemström MDH/IDT Windows Messages WM_CHAR, WM_GETTEXT och så vidare. •lparam och wparam betyder olika saker beroende på vilket meddelande. •Kommer från operativsystemet (tangent och mus) eller från program (set / get window text). •Du bestämmer vilka meddelanden ditt fönster ”förstår” och kan hitta på egna.

Sid 7 CD5250 Daniel Flemström MDH/IDT WM_CHAR

Sid 8 CD5250 Daniel Flemström MDH/IDT Bra Meddelanden att hantera •WM_CREATE När fönstret skapas. •WM_PAINT När fönstret behöver ritas om (tex om någon ändrat storlek) •WM_RESIZE Om någon ändrar storlek.

Sid 9 CD5250 Daniel Flemström MDH/IDT Rita (annat än i WM_PAINT) HDC hDc = GetDC(hWnd)... // Rita som sjutton... ReleaseDc(hWnd, hDc); DC = Device Context GDI

Sid 10 CD5250 Daniel Flemström MDH/IDT Rita Ett Streck MoveTo(hDc, 0,0,NULL) LineTo(hDc,10,20);

Sid 11 CD5250 Daniel Flemström MDH/IDT Flera Bra Ritgrejjor •Ellipse(hdc,...); •RoundRect(hdc,...); •Rectangle(hdc,...); •DrawText(hdc,...);

Sid 12 CD5250 Daniel Flemström MDH/IDT Ändra Färg Befintliga Färger och Penslar: hOldPen = SelectObject(hDc,GetStockObject(WHITE_PEN)); hOldBrush = SelectObject(hDc,GetStockObject(WHITE_BRUSH)); Göra Egna Färger och Penslar: HPEN hPen = CreatePen(PS_SOLID,RGB(255,0,0)); SelectObject(hDc,hPen); HBRUSH hBrush = CreateSolidBrush(RGB(10,20,39)); SelectObject(hD,hBrush); OBS! Avsluta alltid med att välja stock pen och brush + delete av egna! SelectObject(hOldPen); DeleteObject(hPen); // Endast på egengjorda! Högerklicka ”Goto definition of” För att se flera alternativ!

Sid 13 CD5250 Daniel Flemström MDH/IDT Alltogether Now! HDC hDc = GetDC(hWnd) HPEN pYellowPen = CreatePen(PS_SOLID, RGB(0,255,255)); HPEN hOldPen = SelectObject(pYellowPen); SelectObject(GetStockObject(GRAY_BRUSH)); Rectangle(hDc,10,10,20,20); SelectObject(pOldPen); DeleteObject(pYellowPen); ReleaseDc(hWnd, dc);

Sid 14 CD5250 Daniel Flemström MDH/IDT MER? •Enormt mycket mer finns att lära!!! •Alla fönster fungerar så här (Även activeXer internt) •Charles Petzold ”Programming Windows, The Definitive Guide to the Win32 API” Microsoft Press; ISBN: X; 5th Bk&Cd Rom edition (December 1998) •MFC Gömmer detta