AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dark Theme aber nur die Farben

Ein Thema von Phoner · begonnen am 26. Nov 2021 · letzter Beitrag vom 3. Nov 2023
Antwort Antwort
Seite 1 von 3  1 23      
Phoner

Registriert seit: 8. Okt 2008
23 Beiträge
 
#1

Dark Theme aber nur die Farben

  Alt 26. Nov 2021, 09:01
Hallo,

mir ist klar, dass ich Themes verwenden kann. Mein Problem dabei ist, dass die Elemente anders gezeichnet werden. Ich möchte die nativen Steuerelemente, aber nur in einem anderen Farbschema. Geht das überhaupt.
Im Endeffekt will ich auch gar keine speziellen Farben definieren, sondern die, welche auch im Explorer verwendet werden. Dazu gehört eben auch, dass ich keine anderen Symbole für Min/Max/Close haben möchte und auch die gleiche Fensterfarbe für aktives Fenster oder Fenster ohne Fokus.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.021 Beiträge
 
Delphi 12 Athens
 
#2

AW: Dark Theme aber nur die Farben

  Alt 26. Nov 2021, 10:29
Im Endeffekt will ich auch gar keine speziellen Farben definieren, sondern die, welche auch im Explorer verwendet werden.
Sollte das nicht schon der Fall sein, wenn du keine VCL-Styles verwendest und immer schön die Systemfarben (clBtnFace usw.) nutzt?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Phoner

Registriert seit: 8. Okt 2008
23 Beiträge
 
#3

AW: Dark Theme aber nur die Farben

  Alt 26. Nov 2021, 11:22
Ja, meine Anwendung sieht nativ aus, aber eben hell. Wenn ich Windows selbst auf Dark Mode stelle, ändern sich die Explorer-Fenster, aber nicht meine Applikation. Ideal wäre es, wenn man in der Applikation ein Color-Set komplett setzen könnte, welches dem Color-Set von Windows entspricht.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Dark Theme aber nur die Farben

  Alt 26. Nov 2021, 13:55
Ja, meine Anwendung sieht nativ aus, aber eben hell. Wenn ich Windows selbst auf Dark Mode stelle, ändern sich die Explorer-Fenster, aber nicht meine Applikation. Ideal wäre es, wenn man in der Applikation ein Color-Set komplett setzen könnte, welches dem Color-Set von Windows entspricht.
kodezwergs-real-theme-beispiel <- das macht unter anderem genau das.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von FriedrichAT
FriedrichAT

Registriert seit: 25. Mai 2019
Ort: Wien
29 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Dark Theme aber nur die Farben

  Alt 26. Nov 2021, 22:41
Hallo,

Dazu gehört eben auch, dass ich keine anderen Symbole für Min/Max/Close haben möchte und auch die gleiche Fensterfarbe für aktives Fenster oder Fenster ohne Fokus.
Für die "Fensterfarbe" hab ich was...

Delphi-Quellcode:
function Get_Color: TColor;
var Frm: TForm;
    CH:TCanvas;
begin
  Frm:= TForm.Create(Application);
  CH:= TCanvas.create;
  try
    Frm.Caption:= '';
    Frm.BorderStyle:= bsToolwindow;
    Frm.SetBounds(0, 0, 80, 50);
    Frm.FormStyle:= fsStayOnTop;
    Application.ShowMainForm:= False;
    Frm.Show;
    CH.Handle:= GetWindowDC(GetDesktopWindow);
    result:= WinApi.Windows.GetPixel(CH.Handle, Frm.Left+12, Frm.Top+12);
  finally
    CH.Free;
    Frm.Free;
    Application.ShowMainForm:= True;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Memo1.Color:= Get_Color;
end;
Friedrich

Geändert von FriedrichAT (26. Nov 2021 um 23:02 Uhr)
  Mit Zitat antworten Zitat
Phoner

Registriert seit: 8. Okt 2008
23 Beiträge
 
#6

AW: Dark Theme aber nur die Farben

  Alt 29. Nov 2021, 07:55
Ja, meine Anwendung sieht nativ aus, aber eben hell. Wenn ich Windows selbst auf Dark Mode stelle, ändern sich die Explorer-Fenster, aber nicht meine Applikation. Ideal wäre es, wenn man in der Applikation ein Color-Set komplett setzen könnte, welches dem Color-Set von Windows entspricht.
kodezwergs-real-theme-beispiel <- das macht unter anderem genau das.
Vielen Dank! Ja, genau so was in der Art habe ich gesucht. Leider behalten Buttons und einige andere Elemente ihre alte Darstellung. Der Mix sieht dann unschön aus. Bis auf Weiteres verabschiede ich mich deshalb von diesem Ansatz.
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
471 Beiträge
 
Delphi 12 Athens
 
#7

AW: Dark Theme aber nur die Farben

  Alt 2. Nov 2023, 10:11
Da dies genau meine Frage ist und ich keinen passenderen Thread gefunden habe, hole ich das hier nochmal rauf.

Gibt es denn immer noch keine Möglichkeit, dass die Delphi VCL Anwendung unter Windows 11 im nativen Dark Mode (System Einstellungen (Win+I) > Personalisieren > Farben > Modus: Dunkel) sich automatisch anpasst?
Ich verstehe schon, dass es schon länger die Möglichkeit gibt, Themes zu verwenden und diese dann gezielt umzuschalten, aber das ist ja nicht das Gleiche.

Oder übersehe ich da nur Etwas?
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.021 Beiträge
 
Delphi 12 Athens
 
#8

AW: Dark Theme aber nur die Farben

  Alt 2. Nov 2023, 12:12
Gibt es denn immer noch keine Möglichkeit, dass die Delphi VCL Anwendung unter Windows 11 im nativen Dark Mode (System Einstellungen (Win+I) > Personalisieren > Farben > Modus: Dunkel) sich automatisch anpasst?
Gibt es schon, aber aktuell muss man das noch selbst einbauen: Modernize Your App: Are You Handling Windows Themes Correctly?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Dark Theme aber nur die Farben

  Alt 2. Nov 2023, 12:59
Ok, das sind Delphi-VCL-Themes. Aber wie sieht das mit Windows-Systemfarben aus? Das weiter oben erwähnte clButtonFace. Man muss der Anwendung doch "nur" beipulen, daß sie alle Controls an die neuen Systemfarben anzupassen hat, sobald dieses Event
Delphi-Quellcode:
procedure TForm1.WMSettingChange(var Message: TWMSettingChange);
begin
  if SameText('ImmersiveColorSet', String(Message.Section)) then
    // statt HandleThemes; sollte hier entsprechend Themeless reagiert werden
end;
ausgelöst wurde.
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
471 Beiträge
 
Delphi 12 Athens
 
#10

AW: Dark Theme aber nur die Farben

  Alt 2. Nov 2023, 13:56
Gibt es schon, aber aktuell muss man das noch selbst einbauen: Modernize Your App: Are You Handling Windows Themes Correctly?
Der Artikel ist ja schon 2,5 Jahre alt und baut auch nur eine Umschaltung von Themes ein. Das sollte wirklich nicht notwendig sein. Das muss nativ gehen. Nachdem ich das in Windows umgeschaltet habe, sind so gut wie alle Anwendungen automatisch dunkel geworden, bis auf meine und ein paar ältere Programme.

Gibt es da bei Embarcadero keinerlei Bestrebungen oder Ankündigungen? Ich weiß ehrlich gesagt gar nicht, ob das in Windows 10 schon möglich war, aber selbst Windows 11 ist ja schon über 2 Jahre auf dem Markt.
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz