Buchempfehlung
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Umfassend, aber leicht verständlich führt dieses Buch in die Programmierung von ATMEL AVR Mikrocontrollern ein. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Tutorial

Lutz Ifers WinAPI Tutorial

von RedakteurMODSeite 2 von 16

Kapitel 1.1: Was ist die WinApi?
Kap1.1

Jeder, der schon etwas länger programmiert, hat schon einmal Sourcecode wiederverwendet und gemerkt, dass es eigentlich nicht dumm ist, oft benutzte Teile in eine sub() oder function() zu packen, und bei Bedarf einfach "zusammenzustecken".

Dies ist auch die Idee hinter der WinAPI. API steht für "Application Programming Interface" und stellt als Schnittstelle zwischen Programm und Betriebssystem eine Reihe von oft genutzten Funktionen zur Verfügung.

Ein Beispiel: Ein Programm soll eine vom Benutzer auswählbare Datei in irgendeiner Art verarbeiten. Wie wählt der Benutzer die Datei aus? Mit dem in Windows allgegenwärtigen "Datei-Öffnen"-Dialog. Dieser Dialog ist eine function() in der WinApi, die wie eine ganz normale function() aufgerufen werden kann. Gäbe es sie nicht, müsste jeder Programmierer für jedes Programm einen eigenen "Datei-Öffnen"-Dialog programmieren.

Weitere Dinge, die man mit der WinAPI machen kann, sind unter Anderem Abfragen über die Mausposition, Tastatureingaben, Fensterverwaltung (und darum wird es hauptsächlich in diesem Tutorial gehen), Netzwerkunterstützung, oder einfache Dialogboxen, wie folgendes Beispiel demonstriert:

''' Lutz Ifers WinAPI-Tutorial
''' Lizenz: WTFPL
'''
''' Kapitel 1.1 - "Was ist die WinAPI?"


#include "windows.bi"

if MessageBox(0, "Kann man sich eigentlich mehr" + chr(13, 10) + "als zweimal"+_
    " halb totlachen?", "Ich hätt' da mal ne Frage...", MB_ICONQUESTION or _
    MB_YESNO) = IDYES then

    MessageBox(0, "Natürlich kann man." + chr(13, 10) + "Sofern man sich zwis"+_
        "chendrin erholt", "Ja", MB_ICONINFORMATION or MB_OK)
else
    MessageBox(0, "Nicht? Finde ich aber schon.", "Nein", MB_ICONEXCLAMATION _
    OR MB_OK)
end if

Die komplette Deklaration der Messagebox-Funktion lautet:

int MessageBox(hWnd as HWND, Text as STRING, Caption as STRING, uType as UINTEGER)

"hWnd" ist ein sogenanntes Handle zu einem Fenster, und gibt an, wem die Messagebox gehört. Was Handles genau sind, besprechen wir im zweiten Kapitel. Der Text der Messagebox darf auch Zeilenumbrüche (chr(13,10) bzw. \n) oder Tabstops (chr(7) bzw. \t) enthalten. Im uType können die Eigenschaften der Messagebox durch vordefinierte, kombinierbare Flags angegeben werden. Diese Flags beinhalten das Präfix "MB_" für "MessageBox". Mit ihnen lässt sich das angezeigte Symbol (Keins, Ausrufezeichen, Fragezeichen, Stop-Zeichen, Informations-Zeichen), die Buttons (Ja, Nein, OK, Abbrechen, Wiederholen, Ignorieren), den vorausgewählten Button, und den Einfluss des Buttons auf den Programmablauf (Unterbrechen des Programms, Unterbrechen aller Programme, usw.) auswählen.

Links:

Externer Link!MessageBox() in der MSDN

 

Gehe zu Seite Gehe zu Seite  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  
Zusätzliche Informationen und Funktionen
  • Das Tutorial wurde am 17.09.2009 von RedakteurMOD angelegt.
  • Die aktuellste Version wurde am 17.07.2013 von AdministratorSebastian gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen