Sprecher 1: Lassen Sie uns nun ein Programm schreiben dass irgendwie interagiert mit meiner Maus. Insbesondere wollen wir instanziieren, oder erstellen Sie ein Fenster. Und dann lassen Sie uns hören, so zu sprechen, in diesem Fenster für Mausklicks. Und sobald wir erkennen einen Mausklick, mit printf drucken lassen Sie die Koordinaten x Komma y dieser Maus klicken Sie auf, bezogen auf das Fenster. Hier gehen wir. Lassen Sie uns zuerst gevents.h sind, das ist, eine andere Header-Datei in der Stanford tragbare Bibliothek, bezieht grafische Veranstaltungen. Lassen Sie umfassen auch gwindow.h, die enthält Funktionen im Zusammenhang mit Windows. Lassen Sie uns jetzt erklären, Haupt in der üblichen Weise. Und lassen Sie uns jetzt instanziieren das Fenster. Gwindow - wir nennen es Fenster - newGwindow entspricht. Und ich werde etwas willkürlich festlegen, eine Breite von 320 Pixel und eine Höhe von 240 Pixel. Jetzt müssen wir zu gehen, um zu hören für Mausereignisse, so zu sprechen, in diesem Fenster. Jetzt können Veranstaltungen gehören Klicks oder zieht oder Bewegungen. Aber jetzt konzentrieren wir nur auf Klicks. Ich werde absichtlich herbei ein Endlosschleife mit einer while-Konstrukt, einfach so, dass dieses Programm läuft für immer, oder zumindest, bis ich auf die X in der rechten oberen Ecke. Um dies zu tun, wollen wir tun, während wahr. Und dann in der Schleife, können erste Prüfung für die Maus-Ereignis wie folgt. Wir werden einen GEvent erklären, so zu sprechen. Wir werden die variablen Ereignis aufrufen. Und wir werden zu lagern, dass der Rückgabewert GetNextEvent, vorbei in einem speziellen Konstante, die durch Konvention wird in Großbuchstaben geschrieben, mouse_event genannt. Mit anderen Worten, irgendwo in diesem Stanford tragbare Bibliothek, es gibt eine Konstante bezeichnet MOUSE_CLICED. Und es ist eine definierte Funktion ist, dass GetNextEvent genannt, deren Zweck in Leben ist, genau das zu tun. Hören Sie auf, und dann, wenn es hört, gibt das nächste Ereignis, das ist durch die Maus des Benutzers ausgelöst. Nun wollen wir prüfen, ob dieses Ereignis ist null. Denn es ist nicht null, und das ist uns tatsächlich hörte etwas von der Benutzer-Maus, wir gehen, um fortzufahren jetzt prüfen, welche Art Veranstaltungs das war. Wenn getEventType, vorbei an ein Ereignis als Argument, gleich equals MOUSE_CLICKED, die ein zufällig bestimmte Art von Veranstaltungen, das nur weitere Konstante in der deklarierte Stanford tragbare Bibliothek. Nun, wie versprochen, wollen wir jetzt die ausdrucken Koordinaten dieses Mausklick. Printf "% .0 f. Mit anderen Worten, ich werde drucken heraus einen Fließkommawert. Aber ich will nicht, etwas zu sehen nach dem Komma. Also werde ich 0,0 angeben. Komma% .0 f für die Y-Koordinate als gut. Backslash n der Nähe Zitat. Und nun bekommen die x-Koordinate lassen von diesem Ereignis. Das ist die x-Koordinate der Mausklick. Und dann lassen Sie uns y der Veranstaltung, welche die y-Koordinate der Mausklick. Lassen Sie uns nun speichern, übersetzen, und führen Sie dieses Programm. Und wenn ich das tue, sollte es der Fall sein, dass, egal wo ich innerhalb klicken die Grenzen dieses 320 mal 240 Pixel Fenster, sollte ich dann auf meine Konsolenfenster die x Komma y-Koordinaten wo ich geklickt. Machen Klick. . / Anklicken. Und es ist das Fenster, das wir vorausgesagt. Nun lassen Sie mich grob klicken Sie in der oberen linken Ecke des Fensters. In meiner Konsole Bildschirm, sehe ich, dass ich zufällig auf x-Koordinate auf sieben und y-Koordinaten sieben. Lassen Sie uns nun grob klicken Sie in der unteren rechten Ecke des Fensters. Und ich scheinen auf geklickt haben, Pixel-Koordinate 314, 229. Lassen Sie uns jetzt die linke untere Ecke. Und ich sehe, 6, 233. Und oben rechts, 305, 4. Mit anderen Worten, es scheint der Fall zu sein, dass die linke obere Ecke des unser Fenster ist 0, 0. Und die rechte untere Ecke von meinem Fenster ist 320, 240. In anderen Worten, die ich gesehen habe genau jene Werte, hatte ich nur perfekt ausgerichtet ist mein Mauszeiger in jeder dieser Ecken. Dies gilt im Allgemeinen grafisch Programmierung, ob mit Hilfe der Stanford tragbare Bibliothek oder fast jede anderen, wobei wir stellen die Top- Ecke als 0, 0, und die Boden rechten Ecke der Breite Komma Höhe mit positiven Zahlen, auch wenn es nach unten und nach rechts.