Registriert: Mi Aug 13, 2008 12:39 Beiträge: 26 Wohnort: Berlin
Hallo,
ich habe irgendwie ein merkwürdiges Problem. Ich habe verschiedene Edit komponenten bisher benutzt um Eingaben zu tätigen, so weit so gut, läuft alles Prima. Doch nun stelle ich das Formular auf Vollbild ein "WindowState: wsMaximized" und "Borderstyle: bsNone", ich sehe die Komponenten kurz aufblitzen, doch danach sind sie verschwunden. Wo durch kommt das? Wenn ich "WindowState: wsNormal" und "Borderstyle: bsNone" einstelle, dann funktioniert das wunderbar (allerdings auch nur wenn ClientWidth und Height kleiner als die Bildschirm auflösung ist). Ich hoffe ihr könnt mir helfen.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Dein Thread ist an mir vorbeigegangen, hab ihn garnicht gesehen...
Also das Problem erscheint mir reichlich merkwürdig. Hast du denn auf dem Fenster/Panel wo die Buttons drauf liegen auch nen OpenGL-Kontext? Wenn ja, könnte das eventuell zu problemen führen. Dann solltest du den OpenGL-Kontext und die Buttons auf verschiedene (nicht ineinander verschachtelte) Panels aufteilen.
Ansonsten, schau mal ob die Anchors-Settings ([alTop, alLeft] ist normalerweise gut) alle richtig sind.
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Mi Aug 13, 2008 12:39 Beiträge: 26 Wohnort: Berlin
Vielen Dank erstmal für die schnelle Antwort. Also ich habe ein ganz einfaches Programm. Ein Formular auf dem ein Render Kontex ist ( ich denke mal so heißt das). Und auf das Formular lege ich jetzt zum Beispiel eine Button. Wenn das Programm nicht im Vollbild läuft ist das auch alles okay, der Button liegt "über" dem Formular. Aber im Vollbild blitzt der Button nur kurz auf und ist dann für immer Verschwunden. Ich habe das Problem jetzt erstmal so gelöst, dass ich die Formulargröße einfach auf "vollbild minus ein pixel" eingestellt habe, aber das nur unzureichend weil ich jetzt die Taskleiste sehe.
Registriert: Mi Aug 13, 2008 12:39 Beiträge: 26 Wohnort: Berlin
also ich habe das Problem durch einen glücklichen Zufall gelöst. Ich habe hier im Forum eigentlich nach was ganz anderem Gesucht, und dann bin ich dabei auf ein Eintrag gestoßen, wo jemand das selbe Problem hatte. Die Lösung ist zwar nicht ganz zufrieden stellend, aber sie erfüllt irhren Zweck. Ich hatte ja schon gesagt, dass "vollbild minus ein Pixel" das Problem relativ gut löst, nur das die Taskleiste noch zu sehen ist. Der Trick ist jetzt "Vollbild plus ein Pixel". Also ich habe eine Auflösung von 1280x800, also stelle ich folgendes ein.
ClientWidth:=801;
ClientHeight:=1280;
jetzt funktioniert es, die Taskleiste ist weg, warum das so ist, ist mir aber immernoch rätselhaft
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Darauf würde ich mich nicht verlassen. Das kann auf einem anderen Rechner ganz anders aussehen. (Außerdem können manche älteren laptops (und manche neueren Netbooks ) keine Auflösung > 1024x768)
Anstatt das du OpenGL und Buttons gemeinsam auf die selbe fläche pappst, solltest du folgende Lösungen in Betracht ziehen:
1: Du machst ein pannel in das du OpenGL Renderst, und ein Panel wo die Buttons sind. Also quasi getrennt.
2: Du machst die Buttons über OpenGL. Es gibt hier im Projekteforum mehrere GUI projekte. (Hauptsächlich Delphi, Meine JavaGUI kommt noch)
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Registriert: Mi Aug 13, 2008 12:39 Beiträge: 26 Wohnort: Berlin
Ich glaube das was du bei 1. vorgeschlagen hast, wurde in dem Forumsbeitrag auch schon ausprobiert und führt nicht zum Erfog. Aber ich sehe da auch erstmal kein Problem, denn ich verändere ja nicht die Auflösung des Monitor, so gesehen habe ich nur ein Formular welches größer ist als die Auflösung. Aber ich lasse mich da auch gerne berichtigen.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Ja, dann hast du ein Formular, welches größer ist als die monitorauflösung. Und jemand, der mit 1024x768 gegeißelt ist und dann dein Programm verwendet, wird nen Schreikrampf bekommen, weil die hälfe fehlt und er dank bsNone das fenster nichtmal kleiner machen kann. Insofern solltest du deine Anwendung irgendwie so flexibel machen, dass sie auf allen auflösungen größer/gleich 1024x768 sauber läuft.
Für solche Zwecke sind dinge wie Align und Anchors wunderbar geeignet.
Gruß Lord Horazont
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Poste mal bitte ein Beispiel, wo du 1) ausprobiert hast und wo es nicht geht.
Ich glaub nicht, dass es da probleme gibt. Mein Advanced Atom Animator hat auch so funktioniert.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Registriert: Mi Aug 13, 2008 12:39 Beiträge: 26 Wohnort: Berlin
Ich denke immer noch nicht, dass das mit meiner Methode zu irgendwelchen Schwierigkeiten kommt (mein Notebook kann ja auch keine höhere Auflösung als 1280x800 darstellen), denn natürlich hat das Formular nicht die feste größe 1281X800 (im moment zwar schon, aber das ändere ich noch), sondern es wird ja vorher die Monitorauflösung abgefragt und anschließend um 1 erhöht.
Und ich hatte hier das falsch verstanden gehabt mit den zwei Panels. Ich bin sicher, dass das funktioniert, aber so möchte ich das nicht gelöst haben, ich möchte das meine Edit-Komponente über dem gerenderten Bild liegt.
Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.