| |
|
|
- Seite 1 - |
|
ecki | Hallo Profaner,
mich würde mal interessieren, ob schon jemand versucht hat unter XProfan ein Programm mit dem allgegenwärtigen Dark Mode zu erstellen. Ich habe es versucht, aber nur das 1. Fenster (%hWnd) hat funktioniert. Weitere Fenster wie Dialogwindow, Childwindow oder Grid wären nun noch gewünscht. Aber wie könnte das funktionieren?
Gruß oberstleutnant |
|
|
| |
|
|
|
« Dieser Beitrag wurde als Lösung gekennzeichnet. » |
|
- Seite 2 - |
|
Sven Bader | Hallo Ecki,
Dark Mode ist eine sehr individuelle Sache und auch keine Invertierung von Farben. Es gibt sicher Standards für Software, welche mit Microsoft Entwicklungswerkzeugen erstellt wurde aber in der Praxis machen zumindest die Großen alle ihr eigenes Ding (Chrome, Firefox, Photoshop), was man auch an den jeweils anderen Farben erkennt. Word bzw. Office hat es erst mit der neusten Version geschafft, einen Darkmode umzusetzen, da gab es das schon einige Jahre in Windows 10.
Für eine optimale Lesbarkeit wird auch niemals reines schwarz für den Hintergrund und selten reines weiß für den Text verwendet.
Bisher habe ich leider auch noch keine Lösung, welche ein Dark Theme für mich zufriedenstellend umsetzt außer ansatzweise im XProfed. |
|
|
| |
|
|
|
|
| |
|
- Seite 1 - |
|
ecki | Danke Sven,
ich werde mich jetztmal mit Deinen Anregungen beschäftigen. Werde mich zurückmelden, wenn ich ergebnisse vorweisen kann.
Herzlichen Gruß
ecki |
|
|
| |
|
|
|
ecki | Hallo Sven,
ich habe mal Deine Vorschläge getestet, das Ergebnis hat mir nicht so gefallen.
Ich bleibe bei der Farbeinstellung für das %hWnd und lasse alle anderen Fenster so wie sie sind. Mir ist nichts Besseres eingefallen!!
Danke nochmals.
Freundliche Grüße
ecki |
|
|
| |
|
|
|
Georg Teles | Wie schauts denn mit SKControl.dll aus, da kann man die Elemente beliebig einfärben
Schnellbeispiel
Grüße |
|
|
| |
|
|
|
Sven Bader | Ja, die funktioniert auch heute noch. Es kann je nach Element zu abweichendem Verhalten kommen, auch die Suche nach der neusten Version ist nicht ganz leicht. Ich meine es ist die Build 1.22.12 [...]
Dialogfenster sind hier auch nicht dabei. Ich denke aber ein Static ist hier der korrekte Weg. Auch hierfür müsste für ein korrektes Verhalten setparent() nötig sein. |
|
|
| |
|
|
|
ecki | Sven Bader (27.01.2023)
Ja, die funktioniert auch heute noch. Es kann je nach Element zu abweichendem Verhalten kommen, auch die Suche nach der neusten Version ist nicht ganz leicht. Ich meine es ist die Build 1.22.12 [...]
Sven Bader (27.01.2023)
Dialogfenster sind hier auch nicht dabei. Ich denke aber ein Static ist hier der korrekte Weg. Auch hierfür müsste für ein korrektes Verhalten setparent() nötig sein.
Danke Euch Beiden,
ich sehe mir mal das Thema an. Bisher hatte es mich nicht interessiert.
Gruß ecki |
|
|
| |
|
|
|
ByteAttack | [...]
Ich schau mal ob ich den Quelltext noch habe, dann sende ich Dir denn mal - Wieder eines meiner "unvollständigen" Projekten |
|
|
| |
|
|
|
Thomas Freier | In der Art einen Dialoghintergrund?
'######################
'Header-Dateien
'######################
$H Windows.ph
$H Messages.ph
'######################
Windowstyle 543
Declare Ende&,Ende1&,Win02&,Farbe$,Button1&
Farbe$=RGB(0,0,0)
CLS Farbe$
'Der Brush wird von Windows benutzt um den Dialoghintergrund zu zeichnen
Var Dialogpinsel& = ~Createsolidbrush(Farbe$)
Var Button& = CREATE("BUTTON",%hwnd,"Dialog öffnen",10,10,150,25)
WindowTitle "Test..."
Whilenot Ende&
Waitinput
case %Key=2:Ende&=1
If Clicked(Button&)
Ende1& = 0
win02&=CREATE("Dialog",%hwnd,"Dialog",(%MaxX/2-300),(%MaxY/2-250),600,500)
'einmal die Farbe geben
Startpaint win02&
cls Farbe$
Endpaint
Button1& = CREATE("BUTTON",win02&,"Dialog",10,10,150,25)
'Subclassing einschalten
SubClass win02&,1
Whilenot Ende1&
WAITINPUT
If %Key = 2
Ende1& = 1
endif
Endwhile
DestroyWindow(win02&)
Setfocus(%Hwnd)
Endif
Endwhile
DeleteObject Dialogpinsel&
End
SubClassProc
If SubClassMessage(win02&,~WM_CTLCOLORDLG)
Set("WinProc", 0)
'~WM_CTLCOLORDLG erwartet als Rückgabewert einen Brush für den Hintergrund
Return Dialogpinsel&
EndIf
EndProc
|
|
|
| |
|
|
| |
|
- Seite 2 - |
|
|
Georg Teles | |
|
| |
|
|
|
ecki | Hey Thomas,
habe mal mit Deinem Programm experimentiert. Ich habe im Hauptfenster ChildWindows und Gridboxen. Diese sind aber in der DLL nicht implementiert. Also funktionieren sie nicht.
Habe auch die Build 1.22.12
Dasselbe gild für die SKControl.dll.
Grüße an Alle, die sich mit dem Problem beschäftigt haben Ecki |
|
|
| |
|
|
|
H.Brill | Vielleicht kann das die XFrame.dll durch Setzen einer entsprechenden BMP. [...]
Kannst du dir ja mal anschauen. Versprechen kann ich aber nichts. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 29.01.2023 ▲ |
|
|
|
|
ecki | Hallo,
ich glaube nicht, dass alle Eure Vorschläge zu einem richtigen Dark Modus führen.
Meine Vermutung ist, dass es einen neuen Befehl geben muss, der die Farben in ihre Gegenfarbe (Komplementärfarbe) umsetzt. Bei weiß und schwarz wahrscheinlich einfach!? Aber bei den anderen Farben wird es schwierig, weil man das was die Farbe darstellen soll (Umrandung, Schrift o.ä.) noch sehen sollte.
Also, ich weiß keine Lösung. Gruß Ecki
Deshalb bin ich dafür, das Thema zu schließen. |
|
|
| |
|
|
|
Sven Bader | Hallo Ecki,
Dark Mode ist eine sehr individuelle Sache und auch keine Invertierung von Farben. Es gibt sicher Standards für Software, welche mit Microsoft Entwicklungswerkzeugen erstellt wurde aber in der Praxis machen zumindest die Großen alle ihr eigenes Ding (Chrome, Firefox, Photoshop), was man auch an den jeweils anderen Farben erkennt. Word bzw. Office hat es erst mit der neusten Version geschafft, einen Darkmode umzusetzen, da gab es das schon einige Jahre in Windows 10.
Für eine optimale Lesbarkeit wird auch niemals reines schwarz für den Hintergrund und selten reines weiß für den Text verwendet.
Bisher habe ich leider auch noch keine Lösung, welche ein Dark Theme für mich zufriedenstellend umsetzt außer ansatzweise im XProfed. |
|
|
| |
|
|