witch doctor Geschrieben 6. November 2004 Geschrieben 6. November 2004 Hallo, in meinem Studium beschäftige ich mich gerade mit der MFC Programmierung. In dieser Vorlesung programmieren wir gemeinsam ein Demo Programm, welches Werte aus einer Tabelle zieht und daraus einen Graph zeichnet. Eine Aufgabe war es, das hinter dem Graphen befindliche Gitternetz zu programmieren. Zusätzlich sollte man x- und y-Raster ein- und ausschalten können. Das ist auch nicht weiter ein Problem (IF Schleife). Das Gitternetz habe ich mit Rechtecken gezeichnet, da mir das am einfachsten und komfortabelsten schien. Alleine sehen die jeweiligen "Gitternetze" (ist ja dann eigentlich noch keins) gut und fürs Auge gleichmäßig aus. Das Dumme ist nur, dass sie sich gegenseitig verdecken. Das ganze sieht also bei mir so aus: bzw. so Das ganze sollte aber so aussehen (entnommen aus der EXE, die der Prof uns zur Verfügung gestellt hat; den Graphen könnt ihr euch erstmal wegdenken): Die Frage ist jetzt, ob die verdeckten Rechtecke gelöscht werden. Wenn das der Fall ist, dann muss man sie sicherlich irgendwie zwischenspeichern. Die Frage ist nur, wie ich das mache. Wenn es nicht gelöscht wird, gibt es eine Möglichkeit, das Rechteck transparent zu füllen? Ich habe wohl in der Klasse brushes, mit Hilfe des MSDN Dienstes, die Stockobjekte "null" und "hollow" gefunden. Doch damit hat das nicht geklappt. Vielleicht habe ich sie auch falsch angewandt. Hat jemand eine Idee? Bin für jeden Tipp dankbar! Zitieren
Guybrush Threepwood Geschrieben 6. November 2004 Geschrieben 6. November 2004 Wäre es nicht einfacher z.B. mit SetPixel wirklich nur die Linie zu malen? Zitieren
witch doctor Geschrieben 6. November 2004 Autor Geschrieben 6. November 2004 Ich mache es jetzt doch mit Strichen. Ich arbeite jetzt mit der LineTo - Methode. Klappt ganz gut. Allerdings sind die Linien jetzt schwarz, was mich nicht überrascht, da dies der Default Wert ist. Wie bekomme ich die Linien grau? Ich habe in der Referenz gelesen, dass dieser den gerade verwendeten Stift benutzt. Wie wähle ich einen Stift aus und benutze diesen? Ich habe mir bereits eine Klasse geschrieben, wo alle benötigten Stifte und Brushes initialisert werden. Ich kann mit stdpen und stdbrush darauf zugreifen. Doch wie schaffe ich es jetzt, dass meine Linie grau wird? Zitieren
Klotzkopp Geschrieben 6. November 2004 Geschrieben 6. November 2004 Du "selektierst" den Pen in den Device Context - Stichwort SelectObject. Nicht vergessen, hinterher den alten Pen wieder reinzusetzen. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.