IceDesign GUI-Designer
Re: IceDesign GUI-Designer
Danke für deine netten Worte und dein Feedback.
und für die Screenshots (bei 200% nehme ich an), damit ich mir ein besseres Bild machen kann, ich habe keinen HiDPI-Bildschirm, standardmäßig bin ich bei 125%.
Nämlich, dass die DPI-Verwaltung intern in ICeDesign gemacht wird, ohne die DPIaware-Kompilierungsoption zu berücksichtigen.
Aber wenn ich mir deine Erfassung ansehe, gibt es ein paar Dinge, die nicht optimal sind.
Ich werde schauen, was ich an der Größe der Schaltflächen in der Symbolleiste, der Höhe der Panel-Registerkarten und der Höhe der ComboBox-Dropdown-Listenzeilen ändern kann.
Für den Designbereich kann ich hingegen nichts ändern, er wird in einem Maßstab von 100% erstellt, so dass die exakten Positionen für diesen Grundmaßstab beibehalten werden können.
Dann wird die DPIAware-Kompilierungsoption die Position und Größe der Gadgets ausgehend von diesen Grundpositionen und -größen vergrößern.
Sorry für die Übersetzung DeepL, Ich spreche kein Deutsch und es ist wahrscheinlich nicht klar.
und für die Screenshots (bei 200% nehme ich an), damit ich mir ein besseres Bild machen kann, ich habe keinen HiDPI-Bildschirm, standardmäßig bin ich bei 125%.
Nämlich, dass die DPI-Verwaltung intern in ICeDesign gemacht wird, ohne die DPIaware-Kompilierungsoption zu berücksichtigen.
Aber wenn ich mir deine Erfassung ansehe, gibt es ein paar Dinge, die nicht optimal sind.
Ich werde schauen, was ich an der Größe der Schaltflächen in der Symbolleiste, der Höhe der Panel-Registerkarten und der Höhe der ComboBox-Dropdown-Listenzeilen ändern kann.
Für den Designbereich kann ich hingegen nichts ändern, er wird in einem Maßstab von 100% erstellt, so dass die exakten Positionen für diesen Grundmaßstab beibehalten werden können.
Dann wird die DPIAware-Kompilierungsoption die Position und Größe der Gadgets ausgehend von diesen Grundpositionen und -größen vergrößern.
Sorry für die Übersetzung DeepL, Ich spreche kein Deutsch und es ist wahrscheinlich nicht klar.
Re: IceDesign GUI-Designer
Das ist für die Höhe der Tabs und die Höhe der ComboBox-Zeilen getan, mit den Nachrichten #TCM_SETITEMSIZE #CB_SETITEMHEIGHT.
Ich werde nach der Größe der Schaltflächen in der Symbolleiste schauen
Ich werde nach der Größe der Schaltflächen in der Symbolleiste schauen
Re: IceDesign GUI-Designer
Danke für die schnelle Antwort! Ich spreche leider auch kein französisch und nur rudimentär englisch, also ist Deepl schon eine gute Lösung! (Auch für mich!)
Ich denke, ich habe soweit verstanden, wie Du den Designbereich verwaltest. Ist es nicht trotzdem möglich, mittels DesktopResolutionX() beziehungsweise DesktopResolutionY() den Faktor zu bestimmen, um mit korrektem WYSIWYG arbeiten zu können?
Shot von meinem Desktop mit 200% Skalierung:
https://ibb.co/mNQZDtv
Ich denke, ich habe soweit verstanden, wie Du den Designbereich verwaltest. Ist es nicht trotzdem möglich, mittels DesktopResolutionX() beziehungsweise DesktopResolutionY() den Faktor zu bestimmen, um mit korrektem WYSIWYG arbeiten zu können?
Shot von meinem Desktop mit 200% Skalierung:
https://ibb.co/mNQZDtv
Re: IceDesign GUI-Designer
Es ist nicht so einfach wie DesktopResolutionX(Y),
Die im Raster gezeichneten Bilder werden von den echten Gadgets erfasst, die versteckt sind und daher skaliert werden sollten.
Dazu gehören auch die Größe der Ränder für die Container, die Höhe der Tabs und der inneren Bereiche des Panels, die Maße und Positionen der (aktiven) Bildlaufleisten und der inneren Bereiche der ScrollAreas.
Diese Maße sind wichtig und müssen für eine gute Positionierung genau sein, und sie können nicht einfach auf der Grundlage von DesktopResolutionX(Y) berechnet werden.
Und dann ist da noch die Position der Maus im Verhältnis zu all dem.
Leider lässt sich das alles nicht nur mit DesktopResolutionX(Y), DesktopUnscaledX(Y).
Eine Lösung wäre DPI Unaware, um den Windows-Zoom zu haben. IceDesign war ganz am Anfang so, aber ich habe es auf Wunsch der Benutzer geändert, um unscharfe Texte und Bilder zu vermeiden.
Die im Raster gezeichneten Bilder werden von den echten Gadgets erfasst, die versteckt sind und daher skaliert werden sollten.
Dazu gehören auch die Größe der Ränder für die Container, die Höhe der Tabs und der inneren Bereiche des Panels, die Maße und Positionen der (aktiven) Bildlaufleisten und der inneren Bereiche der ScrollAreas.
Diese Maße sind wichtig und müssen für eine gute Positionierung genau sein, und sie können nicht einfach auf der Grundlage von DesktopResolutionX(Y) berechnet werden.
Und dann ist da noch die Position der Maus im Verhältnis zu all dem.
Leider lässt sich das alles nicht nur mit DesktopResolutionX(Y), DesktopUnscaledX(Y).
Eine Lösung wäre DPI Unaware, um den Windows-Zoom zu haben. IceDesign war ganz am Anfang so, aber ich habe es auf Wunsch der Benutzer geändert, um unscharfe Texte und Bilder zu vermeiden.
Re: IceDesign GUI-Designer
IceDesign wurde auf Version 2.0.4 aktualisiert
- Die Höhen der Registerkarten und der ComboBox-Zeilen im Designer sind jetzt DPI-kompatibel.
- Für HiDPI-Bildschirme mit einer Skalierung von 150% oder höher werden die Bilder der Symbolleistenschaltflächen mit einem zweiten Satz von Bildern vergrößert.
Re: IceDesign GUI-Designer
IceDesign wurde auf Version 2.0.5 aktualisiert

- Ein dritter Satz von Bildern für die Symbolleiste wurde hinzugefügt, für DPI-Skalierungsfaktoren von 200% oder mehr.
- Die Positionen des IceDesign-Fensters, auch im Multi-Monitor-Modus, werden nun zusätzlich zu den Abmessungen in IceDesign.ini gespeichert, so dass beim nächsten Neustart die gleiche Position, Größe wieder verwendet werden kann.

Re: IceDesign GUI-Designer
IceDesign wurde auf Version 2.0.6 aktualisiert
- Fehler behoben, in der Prozedur Resize_Window() mit einem Menü, einer ToolBar oder einer StatusBar wird die Zeile :
WindowName_HeightIni - MenuHeight - ToolBarHeight - StatusBarHeight.
Muss geschrieben werden Nur wenn mindestens eines der untergeordneten Gadgets eine Proportionaleigenschaft hat.
- ButtonImageGadget in ObjectTheme.pbi akzeptieren jetzt transparente Bilder, ich meine DrawAlphaImage() vs DrawImage()...
Re: IceDesign GUI-Designer
Vielen Dank für die neue Version!
Ich habe noch festgestellt, dass bei Verwendung von ObjectTheme die Combobox-Items und das DateGadget zu schmal dargestellt werden...
Dategadget:
https://ibb.co/zrP94mt
ComboboxGadget:
https://ibb.co/613xT5g
Beim DateGadget fehlt auch die Beschriftung der Wochentage...
Ich habe noch festgestellt, dass bei Verwendung von ObjectTheme die Combobox-Items und das DateGadget zu schmal dargestellt werden...
Dategadget:
https://ibb.co/zrP94mt
ComboboxGadget:
https://ibb.co/613xT5g
Beim DateGadget fehlt auch die Beschriftung der Wochentage...
Re: IceDesign GUI-Designer
Es wird gemacht, um die Dropdown-Liste der Dpi Combobox aware zu machen.
Was das DateGadget angeht, weiß ich, dass es nicht ideal ist, aber ich weiß nicht, wie ich es verbessern kann.
Schau dir dieses Thema an: https://www.purebasic.fr/english/viewtopic.php?p=519438
- Mit dem Standard-Theme kann die Date DropDown-Liste nicht bemalt werden, sie bleibt weiß.
- Ohne das Theme wird die Date DropDown Liste übermalt (nicht die Tage), aber ein wenig abgeschnitten (wie derzeit in ObjectTheme).
- Eine andere Möglichkeit ist, SetThemeAppProperties_(1) zu verwenden. Das DropDown-Datum wird gemalt und mit der richtigen Größe, aber in der Rückgabe wird das "DarkMode_Explorer"-Thema nicht für alle ScrollBars angezeigt.
Ich werde eine Konstante #DateGadgetTheme = 0, 1, 2 hinzufügen, um jedem die Wahl zu überlassen.
Ich werde das Update auch mit der Entfernung von leeren Texten für die Mehrsprachigkeit aktualisieren.
Was das DateGadget angeht, weiß ich, dass es nicht ideal ist, aber ich weiß nicht, wie ich es verbessern kann.
Schau dir dieses Thema an: https://www.purebasic.fr/english/viewtopic.php?p=519438
- Mit dem Standard-Theme kann die Date DropDown-Liste nicht bemalt werden, sie bleibt weiß.
- Ohne das Theme wird die Date DropDown Liste übermalt (nicht die Tage), aber ein wenig abgeschnitten (wie derzeit in ObjectTheme).
- Eine andere Möglichkeit ist, SetThemeAppProperties_(1) zu verwenden. Das DropDown-Datum wird gemalt und mit der richtigen Größe, aber in der Rückgabe wird das "DarkMode_Explorer"-Thema nicht für alle ScrollBars angezeigt.
Ich werde eine Konstante #DateGadgetTheme = 0, 1, 2 hinzufügen, um jedem die Wahl zu überlassen.
Ich werde das Update auch mit der Entfernung von leeren Texten für die Mehrsprachigkeit aktualisieren.
Re: IceDesign GUI-Designer
IceDesign wurde auf Version 2.0.7 aktualisiert
Kleinere Aktualisierungen:
Kleinere Aktualisierungen:
- Unnötige leere Texte sind nicht mehr im Multi-Language Modul enthalten.
- ObjectTheme Version 1.5.2 aktualisiert, Dpi aware ComboBox Dropdown-Liste.