AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

Ein Thema von neumimnemecky · begonnen am 21. Jul 2022 · letzter Beitrag vom 3. Aug 2022
Antwort Antwort
Seite 3 von 3     123
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.122 Beiträge
 
Delphi 10.4 Sydney
 
#21

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 23. Jul 2022, 15:54
* den problematischen alten Teil in DLL verschieben und dann den Rest auf Neu umstellen
Wenn es nicht austauschbar ist, dann würde ich das machen.
Wieso in 95% der Antworten auf sowas wie Generics, Unicode, lokale Variablendeklaratino verzichten, wenn man das auch in nur 5% muss

Je länger man aber wartet, um so mehr bleibt man in der Sackgasse hängen und verläuft sich noch viel tiefer darin.
Bzw. hat immer mehr neuen Aufwand, um das Alte am Leben zu halten, je länger man wartet.
Der Umstieg wird also nur noch immer schwerer und schwerer ... vor allem wenn man immer mehr gefrickel einbaut ... das dann irgendwann aufzulösen macht bestimmt noch weniger Spaß.
Mit dem Umstieg (D6->XE6, dann leichter XE6->10.2, jetzt 10.4) konnten wir auch wieder einige Woraround und Komponenten ausbauen.
EmbeddedWB war mit aktuellen Delphis nicht mehr nötig und jetzt fliegt auch IE-Nutzung raus und Edge kommt rein.
Ebenfalls eine Bibliotheken konnten entsorgt werden, da jetzt Delphi alles mitbringt (z.B. PNG)
Auch ein Workaround wegen Abstürzen auf Multi-Sockelsystemen (gerne auf TerminalServices/Citrix-Umfeld zu finden) konnte ins nil-Device verschoben werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.122 Beiträge
 
Delphi 10.4 Sydney
 
#22

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 23. Jul 2022, 15:56
Okay, ich entschuldige mich für meine falsche Aussage, mit genug Man-Power kommt man irgendwie an ein Ziel.
Du musst aber dagegen rechnen wie viel Manpower du mehr benötigt, um das System mit D6/7../2007 am leben zu halten.
Ich würde sicherlich nicht mehr zu ein Arbeitsstelle welchseln die bei einem solch alten IDE-Version bleiben will.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
neumimnemecky

Registriert seit: 21. Dez 2018
45 Beiträge
 
#23

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 30. Jul 2022, 11:34
TStyleManager.ActiveStyle.GetStyleColor holt sich nun mal über Vcl.Themes die Informationen, da es das unter Delphi 7 nicht gibt, gibt es auch keine Alternative.
Es ist wie "Wie kann ich mit Delphi 7 für Linux kompilieren, FMX erstellen etc..." es ist technisch nicht machbar.
Das ist aber schlicht falsch und nicht wahr. D7 hat seit Windows XP Theme Support und damit kann man das auch machen, nur halt ohne die Delphi Styles, da diese viel Später gekommen sind, aber das ist wohl auch garnicht sein Wunsch. Er will nur wissen, wie man diesen Code für D7 anpasst und da gibt es eben die ThemeServices in D7, die im Prinzip das Selbe machen, nur halt für die Windows Themes und nicht die neueren Delphi Themes (Styles). Auch da gibt ees API Aufrufe die die Farben des aktiven Themes liefern. Es spricht nichts dagegen, dass er diese nutzen kann. Die Frage ist eben nur, ob er er das überhaupt braucht und nicht einfach das ganze Painting Windows machen lassen kann. Anahand seine Einzelziel sehen wir ja leider nicht wo er das genau her hat.
Code von dieser Seite. Ich kann den Link nicht finden. Ich habe diesen Code gefunden und wollte ihn testen. Der Thread sprach über das Flackern beim Rendern einer Spike-Wave einer Audiodatei. Ich heile, ich bin mit Antworten verspätet.
https://www.delphipraxis.net/176705-...cl-styles.html

Geändert von neumimnemecky (30. Jul 2022 um 11:38 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.719 Beiträge
 
Delphi 11 Alexandria
 
#24

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 1. Aug 2022, 15:33
So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows:
Code:
Buffer.Canvas.Brush.Color := TStyleManager.ActiveStyle.GetStyleColor (scWindow);
um es auf Delphi 7 nutzbar zu machen?
Ich glaube die Systemfarbcodes sind in der Graphics unit in Delphi7
Code:
Buffer.Canvas.Brush.Color := clWindow
clwindow ist die standard Fensterfarbe des aktiven Windows Theme.

Noch eine Sache.
Lazarus ist zu Delphi7-code recht kompatibel bzw. kann deutlich mehr.
Es ist eine gute Plattform um Legacy Delphi 7 Projeke zu pflegen ohne sie großartig weiter zu entwickeln.

Mit dem festhalten an Delphi7 tust Du Dir keinen gefallen.
Was du hier massiv aufgebaut hast nennt man "Technical Debt". Und die "Zinsen" die du dafür zahlst diese Schulden nicht zu zahlen werden immer größer. Das projekt wird sich immer aufwändiger verändern und am laufen halten. Du wirst für kleinste Änderungen Tagelang in Foren nach Lösungen suchen müssen oder Lösungen selber entwickeln müssen für die es fertigen Kode gäbe hättest du dein Projekt nur mal auf einen aktuellen stand gebracht!
Tatsache ist das Profis sich so einen Rückstand eher leisten können als Hobbyisten, denn Profis können ein Projekt das mal eine Cashcow war und gemolken wurde bis zum geht nicht mehr auch einfach unter Wirtschaftlichkeits aspekten sterben lassen.
Du willst aber vermutlich nicht neu anfangen?
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 1. Aug 2022 um 15:45 Uhr)
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
578 Beiträge
 
Delphi 11 Alexandria
 
#25

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 2. Aug 2022, 15:37
Code von dieser Seite. Ich kann den Link nicht finden. Ich habe diesen Code gefunden und wollte ihn testen. Der Thread sprach über das Flackern beim Rendern einer Spike-Wave einer Audiodatei. Ich heile, ich bin mit Antworten verspätet.
https://www.delphipraxis.net/176705-...cl-styles.html
Wenn du dich da auf folgenden Code beziehst, kannst du einfach die Farbe clWindow nutzen und den ganzen TStyleManager Krams weglassen.
Delphi-Quellcode:
procedure TForm1.DrawSpectrum;
begin
  // clear background
  // Buffer.Canvas.Brush.Color := TStyleManager.ActiveStyle.GetStyleColor (scWindow);
  Buffer.Canvas.Brush.Color := clWindow;
  Buffer.Canvas.FillRect(Rect(0, 0, Buffer.Width, Buffer.Height));

  // Rest wie gehabt
end;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
40.775 Beiträge
 
Delphi 11 Alexandria
 
#26

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 2. Aug 2022, 17:13
Naja, wenn man die aktuelle Farbe des aktuellen Styles haben will, dann brauchte man es.
clWindow ist ja die Standardfensterhintergrundfarbe, wie sie im aktuellen Windows ist.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list
  Mit Zitat antworten Zitat
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
802 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 2. Aug 2022, 18:19
Naja, wenn man die aktuelle Farbe des aktuellen Styles haben will, dann brauchte man es.
Das mag ja sein, aber hat man überhaupt einen aktuellen Style, wenn man Delphi 7 nutzt?
The angels have the phone box.
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
578 Beiträge
 
Delphi 11 Alexandria
 
#28

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 3. Aug 2022, 13:12
Naja, wenn man die aktuelle Farbe des aktuellen Styles haben will, dann brauchte man es.
clWindow ist ja die Standardfensterhintergrundfarbe, wie sie im aktuellen Windows ist.
Er nutzt Delphi 7 und da ist das genau richtig so, da diese Farbe dem aktuellen Windows Theme entspricht. Die Delphi eigenen Styles gibt es nicht und braucht er auch garnicht. In D7 gibt Windows das Theme vor und nicht Delphi und das ist auch gut so, da sich so das Programm automatisch mit dem OS optisch weiterentwickelt, ohne dass man etwas neu kompilieren muss. Delphi Style Anwendungen sehen irgendwann veraltet aus, da die immer gleich aussehen werden und sich nicht an das OS anpassen. Das ist einer der Gründe, wieso ich keine Delphi Styles nutze. Wenn ich etwas hasse, dann sind as GUI's, die für jedes Programm irgendwie ungewohnt und fremdartig aussehen und sich nicht and die Optik des OS halten.

Geändert von Rolf Frei ( 3. Aug 2022 um 13:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
9.954 Beiträge
 
Delphi 11 Alexandria
 
#29

AW: So beheben Sie den Farbeinstellungsbefehl für den aktiven Stil unter Windows

  Alt 3. Aug 2022, 15:34
Wenn ich etwas hasse, dann sind as GUI's, die für jedes Programm irgendwie ungewohnt und fremdartig aussehen und sich nicht and die Optik des OS halten.
Manchmal ist das aber genau so gewünscht bzw. notwendig (z.B: Maschinensteuerung oder Corporate Identity). Das soll dann unter Windows, MacOS, Linux usw. immer gleich aussehen. Wir hatten das auch gerade kürzlich in der Englischen DP diskutiert.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf