C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 6: Fortgesch. Programmierung

Ähnliche Dokumente
C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 8: Professionelle Entwicklung

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 7: Prozesse und Möglichkeiten

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 3: Kombination OOP/WF

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 4: Kombination OOP/.NET

Vorlage zur Dokumentation der täglichen Arbeitszeit

Programmieren lernen in Visual Basic.NET

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 5: Windows Forms

Vorlage zur Dokumentation der täglichen Arbeitszeit

Wangerooge Fahrplan 2016

Haushaltsbuch Jänner 2013

Komponenten & Frameworks Seite 1

Wangerooge Fahrplan 2015 Fahrzeit Tidebus 50 Minuten, Schiff und Inselbahn ca. 90 Minuten.

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 2: Einstieg in die OOP

2.1 Visual C Express installieren Visual C Express starten Visual C Express registrieren...

Visual Basic.NET mit Methode

Charles Petzold. Windows 95. Programmierung ; ' :,:" 'üijijsarkmüw.flsfflfi <<>\ lll i '»,, 'S ) ;ji*roi/;>w >JG

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 1: Grundlagen

ASYNC HARDCORE. Stefan Dirschnabel. #dncgn

Multi-Threading. Ralf Abramowitsch Vector Informatik GmbH

manchen Situationen bei der Fehlersuche und bei der Erzeugung von Anwendungen mit C# und.net helfen wird.

Visual C# 2005 für Profis

Async und Await Asynchrone Programmierung in C# 5

Programmieren lernen in ASP.NET mit C#

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein

1 Einführung 1. 2 Einrichten der Arbeitsumgebung 9. 3 Schnelleinstieg in Xcode und Objective-C 25

Verteilte Systeme. Nebenläufigkeit. Prof. Dr. Oliver Haase

C#.NET mit Methode. Professionelle Software entwickeln mit C# und.net: Grundlagen, Windows, ADO.NET, ASP.NET und Remoting. vieweg.

Windows Presentation Foundation - Crashkurs

~±] Inhalt. 1.1 Ähnlichkeiten zwischen C# und Java Unterschiede zwischen C# und Java Das.NET-Framework 4 1.

Windows Presentation Foundation Crashkurs

Datum Wochen Band DVD Band eingelegt Protokoll kontr. Recovery kontr. Tag Nr. RW Sign. Sign. Sign.

Ein Array ist eine Liste mit Einträgen, fast wie eine Einkaufsliste. Man kann darin also mehr als einen Eintrag in eine einzige Variable speichern.

Landgerichtsbezirk Wiesbaden Datum Thema Dozent U-Std. Zeit

Hochschule Darmstadt Fachbereich Informatik

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

.Net Interoperabilität

Objektorientierte Programmierung OOP Objektorientierte Programmierung (OOP) mit Java

6 Graphik - GDI. 6.1 Graphics-Objekt und Paint Event In einem Control zeichnen 6-1

Java - AWT Basispraktikum SystemArchitektur WS 2008/ Atanas Dimitrov

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

Parallel Computing in.net

.NET Windows Forms. Markt + Technik Verlag. Chris Payne

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein

Matthias-Claudius-Gymnasium Fachcurriculum Informatik

Inhaltsverzeichnis. Teil I Erste Schritte. 1 Einleitung 11. Teil II Grundlagen von VBA. 2 Die ersten VBA-Prozeduren erstellen 17

Vorbemerkung 3. Aufbau des Buches 3. Teil 1 Einführung in C# 11

ASP.NET 3.5 mit AJAX

Walter Doberenz/Thomas Kowalski Programmieren lernen in

Visual C Markt+Technik DIRK LOUIS. Der schnelle und einfache Einstieg in die Windows-Programmierung

Microsoft.NET Framework & Component Object Model. ein Vortrag von Florian Steuber

Seminar: Multi-Core Architectures and Programming

Inhaltsverzeichnis. Vorwort NXTundNXC DerNXT NXC Not exactly C Compiler Zusammenfassung 17

Programmierung 2 Studiengang MI / WI

C++GUI Programmierung mit Qt 4

Beschreibung des Angebotes. Java Programmierung. LernenimInternet. Ansprechpartner. Angebot-Nr Angebot-Nr Weiterbildung.

Beck EDV-Berater VBA. Visual Basic for Applications Programmieren unter Office XP. 2., neu bearbeitete Auflage

Javakurs für Fortgeschrittene

Madrid Amsterdam

Threads. Netzwerk - Programmierung. Alexander Sczyrba Jan Krüger

Inhaltsverzeichnis. jetzt lerne ich

<Trainingsinhalt> C# programmieren

Inhaltsverzeichnis. jetzt lerne ich

Klausur Software-Entwicklung März 01

ASP.NET WebForms - Einstieg und Grundlagen

ASP.NET WebForms - Einstieg und Grundlagen

Roboter programmieren mit NXC für LEGO MINDSTORMS NXT

parallele Prozesse auf sequenziellen Prozessoren Ein Process ist ein typisches Programm, mit eigenem Addressraum im Speicher.

Grundlagen in C# und.net

Nebenläufige Programmierung in Java: Threads

Windows Presentation Foundation - Crashkurs

Ferienwohnung Altmühltal, Ferienhaus Eichstätt direkt am Fluss. Belegungskalender und

The app the crashes, before the breakpoint is reached: Code to the event:

Institut fu r Informatik

Thomas Claudius Huber. Asynchrone Programmierung mit C#

Informatik I (D-MAVT)

CAS Client Applications mit.net

Inhalt. Teil 1 C# 2.0 Grundlagen 33. Widmung Einleitung Über den Autor... 31

KEP DB Update USER MANUAL LAUFWERK Systemhaus

LVMAS. Das mobile Agentensystem in NI LabVIEW. Frederik Berck GSI Darmstadt

Inhaltsverzeichnis. Inhaltsverzeichnis

Ultranalysis installieren

KW Datum Inhalt TRAINING Soll Dauer Kilometer Bemerkung RP DP kg Trainingsumfang/Wo. 07.Jun Sa Langsamer Dauerlauf 45 GA

4.7 Code Editor Intellisense Code Expansion Code Snippets Schriftgröße Event Handler...

Whitepaper. Produkt: List & Label. Thema: Eine Übersicht der Einbindungsmöglichkeiten. combit GmbH Untere Laube Konstanz

State Machine Workflow mit InfoPath Formularen für SharePoint 2010 Teil 1

TwinCAT HMI Application

Ereignisse (Events) Asynchrones Versenden von Informationen Sender (Herausgeber) Empfänger (Abonnent) Dr. Beatrice Amrhein

101 VisualBasic.NET Anwendungen

Helma Spona. Windows PowerShell. Galileo Press

Pthreads. David Klaftenegger. Seminar: Multicore Programmierung Sommersemester

Projektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik

Inhaltsverzeichnis. jetzt lerne ich. Vorwort 15


JUNG Facility-Pilot Visualisierungs-Server Version 2.2

Immo Meets Office Easy Office Storage Easy Outlook Storage Handbuch

Transkript:

C# Programmierung Eine Einführung in das.net Framework C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 1

Zeitplan diese Woche Mo Di Mi Do Fr Zeichnen GDI+ Details Threas (CTE) lock, mutex ThreadPools TimerThreads BGW Process-Class Callbacks DirectX Webservices ASP.NET C# 4 Tasks WP 7 SDL.NET Lokalisierung Bibliotheken Registry Setup-Projekt Projektideen Projektteams Arbeiten am Projekt Arbeiten am Projekt: Release Cand. Präsentation des Projektes C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 2

Mo Zeichnen GDI+ Details Threas (CTE) lock, mutex ThreadPools TimerThreads BGW Tag 6 Fortgeschrittene Programmierung Die Macht des Systems ausnutzen nicht mehr auf Subprozesse warten müssen! C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 3

Wiederholung Windows Forms ToolBox und Designer Ohne Designer: Hinzufügen von Elementen Eigene Elemente einfache OOP Kurze Wiederholung zu OOP und dem.net Framework (Arrays, Collections, Strings, Streams, ) Für async Programmierung essentiell: Delegates! C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 4

Eigene Steuerelemente 2 Häufig wird OnPaint(PaintEventArgs) überschrieben Zeichnen des Steuerelements sehr wichtig. GDI+ wird hier verwendet bequemer Zugriff in.net Zentrales Objekt: Graphics Können damit sehr schnell Steuerelemente, Bilder, Druckausgaben, uvm. zeichnen C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 5

GDI+ im Detail Verwenden das Steuerelement PictureBox Koordinatensystem von.net beim Zeichnen Welche Bildformate werden unterstützt? (quasi alle!) Einige Klassen im Detail: Pen, Brush, Color, Font Nutzen der Grafik-Funktionen wie z.b. DrawEllipse(); C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 6

Noch mehr GDI Mehr Pinsel, z.b. Farbverlauf mit LinearGradientBrush Gerätekoordinatensystem mit PageUnit Kanten- und Textglättung aktivieren Double-Buffering Eigenschaft des Formulars um Flackern zu unterbinden (wie geht das?) Koordinatentransformationen mit Rotate und Scale C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 7

Beispiel 01 Zeichnen mit GDI+ C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 8

Das Windows System Eingeteilt in Threads täuschen Multitasking vor Echtes Multitasking nur auf Mehrprozessor Systemen Threads können verwendet werden um ein Programm in Aufgaben zu unterteilen Windows gibt den Threads Rechenzeit (je nach Prio) Im.NET Framework ex. Thread-Klasse! C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 9

Veranschaulichung C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 10

Erstellen eines Threads Ein Thread läuft immer: in dem ist die Anwendung Beim Erstellen von einem neuen Thread: er läuft und wird anschließend beendet (wenn die Thread Methode abgeschlossen ist) Was passiert beim Zugriff auf Programmoberfläche? Wie kann man nun auf Steuerelemente zugreifen? Wie werden die delegates sinnvoll verwendet? C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 11

Threads im Detail Methoden und Eigenschaften der Thread-Klasse Codeblöcke über lock sperren Weitere Möglichkeiten ein mutex verwenden Mehrere Threads mit einem ThreadPool kontrollieren Das richtige Timing mit Timer-Threads. C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 12

Die Thread Zustände Viele Funktionen nur bei bestimmten Zuständen möglich muss davor abgefragt werden C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 13

Beispiel 02 - Threads C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 14

Geht das einfacher? Die BackgroundWorker Komponente Ereignisse des Steuerelements Fortschrittsanzeige und Abbruchmöglichkeit einbauen Nachteile der BackgroundWorker Komponente C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 15

Background-Worker Die drei essentiellen Ereignisse verstehen und benutzen C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 16

Beispiel 03 BackgroundWorker C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 17

Abschließendes Beispiel Eigenes Steuerelement, welches sich selbst zeichnet (analog Progressbar nur schöner) Steuerelement soll gestartet werden können (beginnt großen Schreibprozess bis x MB) Abbrechen muss möglich sein Logik (d.h. IO Zugriff) von Oberfläche (GDI+) trennen über BackgroundWorker C# Programmierung - Tag 6: Fortgesch. Programmierung 1/27/2012 18