Startseite   |  Site map   |  A-Z artikel   |  Artikel einreichen   |   Kontakt   |  
   
  •  
    Biologie
    Themen der Chemie
    Deutsch online artikel
    Englisch / Englische
    Franzosisch
    Geographie
    Geschichte
    Informatik
    Kunst
    Mathematik / Studium
    Musik
    Philosophie
    Physik
    Recht
    Sport
    Wirtschaft & Technik



    Biographie

    Impressum

informatik artikel (Interpretation und charakterisierung)

Technologie

Ausgabe (gdi, dc)


1. Java
2. Viren



4.1 GDI - Graphics Device Interface


Das GDI stelt eine Bibliothek von Routinen dar und wird sowohl von Windows selbst als auch von allen Applikationen zur geräteunabhäängigen Grafik- und Textausgabe verwendet. Es bildet die logische Schnittstelle zwischen den Programmen und den Hardware - Treibern der Geräte.

Es werden 4 logische Einheiten unterstützt:
. Bildschirme

. Hardcopy - Geräte
. Bitmaps

. Mata - Dateien

Jedes Fenster entspricht einer eigenen Zeichenoberfläche mit eigenenem Koordinatensystem, automatisches Clipping verhinder versehentliches Überschreiben anderer Fenster


4.2 Einheitenkontext (Device Context)


Der Einheitenkontext oder Device Context (DC) stellt die Verbindung zu einer bestimmten Einheit (Zeichenoberflöche) her. Er sorgt für die Zugriffserlaubnis, bei Hardcopy-Geräten (Drucker, Plotter,...) durch \"Spooling\", bei Bildschirmen durch \"Clipping\".

Der DC liefert eine Art Werkzeugkasten, in dem logische Werkzeuge enthalten sind. Solche Wekzeuge sind beispielsweise
. Pinsel (Brush, Füllwerkzeug))

. Zeichenstift (Pen)
. Schriften (Fonts)

. etc.

Der DC wird über einen hdc angesprochen, einem Handle, und wird vom Window-Manager \"geliehen\".
prinzipieller Ablauf nach WM_PAINT sonst

DC anfordern BeginPaint GetDC
Ausgaben durchführen TextOut TextOut

DC zurückgeeben EndPaint ReleaseDC


Ändern der Werkzeuge im DC:
Beispiel: anderer Stift (Pen)

1. Bezug auf logischen Stift besorgen
o entweder vom \"Basisstift\" ausgehend mittels GetStockObject
o neuen Stift anwählen mittels CreatePen
2. gewähltern Stift in den DC aufnehmen mittels SelectObject



4.3 \"bleibende Ausgaben\"

Da aufgrund normaler Benutzeraktivitäten das Programmfenster im Anzeigebereich jederzeit überschrieben werden kann (sei es durch andere Programmfenster, den Bildschirmschoner, ...), muß das Programm jederzeit in der Lage sein, sein Fenster neu darzustellen.
Wird ein Fenster ganz oder zumindest teilweise zerstört, sendet Windows die Meldung WM_PAINT an das entsprechende Programmfenster. Durch das Abfangen der Meldung in der Meldungsbehandlungsfunktion WndProc kann auf WM_PAINT reagiert werden, indem das Fenster neu gezeichnet wird. zu diesem Zweck müssen jedoch alle Informationen bekannt sein, die zum Neuzeichnen des Fensters nötig sind.
Beispiel: Anzeigen der aktuellen Mausposition
. Mausklick verursacht WM_LBUTTONDOWN
. in der Funktion, die die Meldung bearbeitet, wird die aktuelle Mauspositon am Bildschirm angezeigt
. sofortige Ausgabe funktioniert zwar, jedoch geht die Ausgabe verloren, wenn das Fenster minimiert wird, da zum Anzeigen ein linker Mausklick nötig ist

Richtige Methode für \"bleibende\" Anzeige:
. als Reaktion auf WM_LBUTTONDOWN wird die aktuelle Position des Mauszeigers in einer Variable gespeichert
. Anzeige erfolgt erst bei WM_PAINT
. erzwingen einer neuerlichen Ausgabe bei Mausklick mittels InvalidateRect
InvalidateRect
Diese Funktion \"zerstört\" die aktuelle Ausgabe, indem es Windows anweist, das Fenster neu zu zeichen.
Beispiel für Programm mit bleibener Ausgabe

Erklärung:
1. Das Programm gibt einie Bitmap im Fenster aus, es reagiert auf das Ereignis WM_PAINT
2. Ein anderes Fenster (hier NT-Explorer) überschreibt die Ausgabe
3. Die zweite Anwendung wird geschlossen, das Fenster, in der die Bitmap angezeigt wird, bleibt zerstört. Windows sendet WM_PAINT
4. Das Programm reagiert auf die Meldung und gibt die Bitmap neuerlich aus

 
 




Datenschutz

Top Themen / Analyse
Scannermodi -
Applikationssegmente
MultiMedia und Mythos MultiMedia
Gopher
Local Area Network -
Modem-
CD-ROM (Compact Disk - Read Only Memory)
Backtracking -
Der Computer
INTELs nächste revolutionäre Etappe: Der 80386





Datenschutz

Zum selben thema
Netzwerk
Software
Entwicklung
Windows
Programm
Unix
Games
Sicherheit
Disk
Technologie
Bildung
Mp3
Cd
Suche
Grafik
Zahlung
Html
Internet
Hardware
Cpu
Firewall
Speicher
Mail
Banking
Video
Hacker
Design
Sprache
Dvd
Drucker
Elektronisches
Geschichte
Fehler
Website
Linux
Computer
A-Z informatik artikel:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

Copyright © 2008 - : ARTIKEL32 | Alle rechte vorbehalten.
Vervielfältigung im Ganzen oder teilweise das Material auf dieser Website gegen das Urheberrecht und wird bestraft, nach dem Gesetz.