Einfachste Möglichkeit zum erstellen eines HWND
Ich brauche ein dummy-Fenster in MSVC++, das wird nie sichtbar sein, und wird erstellt, noch bevor die app im Hauptfenster. Es ist erforderlich, durch eine rendering-engine. Also würde ich eher nicht haben, sich zu registrieren eine Klasse, wenn möglich.
Zum testen wäre es besser um es sichtbar zu machen, um es zu beweisen ist es - kann ich eine statische oder eine Taste oder so etwas? Ich habe versucht mit CreateWindow() aber während ich bin immer einen Wert zurück, nichts sichtbar ist erscheinen.
"von einer rendering-engine" deutet darauf hin, dass dieses Fenster wird verwendet, um eine render-Kontext. Ist das so? In diesem Fall sollten Sie vorzugsweise erstellen Sie ein Fenster der gleichen Klasse wie Ihre Anwendung Fenster. Sonst haben Sie keine Garantie, dass a) Sie können einen Kontext schaffen, und b) dass der Zusammenhang kompatibel mit der man Sie später benutzen. Sie haben sich zu registrieren eine Klasse sowieso zu Ihrem Haupt-Fenster, so dass es nicht "Kosten extra", wirklich.
Ich bin nicht meine eigene Haupt-Fenster, so dass ich keine Klasse wieder zu verwenden... und diese Fenster als dummy-render-Fenster von dem Motor... eigentlich nie gerendert.
Ich zweite das, weil ich oft in Situationen, dass ich noch eine dummy-hWnd. Zum Beispiel ich brauche eine hwnd-Eigenschaft für einige win32-font-API, um blit die schriftart in einem 2d-Speicher-array, ohne dass es an das Fenster.
Ich bin nicht meine eigene Haupt-Fenster, so dass ich keine Klasse wieder zu verwenden... und diese Fenster als dummy-render-Fenster von dem Motor... eigentlich nie gerendert.
Ich zweite das, weil ich oft in Situationen, dass ich noch eine dummy-hWnd. Zum Beispiel ich brauche eine hwnd-Eigenschaft für einige win32-font-API, um blit die schriftart in einem 2d-Speicher-array, ohne dass es an das Fenster.
InformationsquelleAutor Mr. Boy | 2011-03-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich meine eigenen test-code für Kritik:
Es schien zu funktionieren...
Es ist meine Antwort auf meine Frage - nach der Frage, die ich versuchte es und es funktionierte. Mit Kritik meine ich, es ist offen für Verbesserungen oder was auch immer.
Der Typ des Rückgabewert von CreateWindow ist nichtig. CreateWindowEx-gibt ein HWND
InformationsquelleAutor Mr. Boy
Nach CreateWindow, die Sie brauchen zu call ShowWindow um es sichtbar zu machen.
WS_VISIBLE
Flagge.InformationsquelleAutor Dan Byström
Im ersten tutorial von NeHe beschreiben Sie genau, was Sie tun müssen, um die Einrichtung einer OpenGL-rendering-Kontext, und die Schaffung von einem Fenster (und HWND) ist ein Teil davon. Wenn Sie es brauchen für etwas anderes als OpenGL-Kontext glaube ich, dass der code, den Sie präsentieren können, werden leicht angenommen.
Habe ich noch nicht gesehen. Aber ich denke, es ist leichter zu entfernen unerwünschter code anstatt neu erstellen. Das ist, warum ich gepostet.
Bitte nicht zitieren, NeHe
Warum nicht? Auch beachten, dies ist eine 7 Jahre alte Frage/Antwort.
Sie haben einige wirklich "schönen" code
InformationsquelleAutor CygnusX1