Funktioniert ab CT Version 8.1.
In der IDE: mit dem Paketmanager das Paket pl_Win_Darkstyle hinzufügen und komplett neu kompilieren.
Im Projekt: im Projektinspektor pl_Win_Darkstyle in die Packages aufnehmen.
Im Sourcecode:
uses .., uWin32WidgetSetDark, uDarkStyleSchemes, uMetaDarkStyle, uDarkStyleParams, .. initialization PreferredAppMode := pamAllowDark; uMetaDarkStyle.ApplyMetaDarkStyle(DefaultDark); end.
Zur Änderung des Modus ist immer ein Neustart der App erforderlich.
Dafür gibts die Unit jmrestart.pas.
unit jmRestart; { Diese Unit als ERSTE in die Uses Klausel des Projektquelltextes einbinden. Soll die Anwendung sich selbst neu starten, so muss ReStartProgram := True gesetzt werden und anschließend die laufende Applikation beendet werden. } {$mode ObjFPC}{$H+} interface var RestartProgram: boolean = false; implementation uses Windows; procedure DoReStart; var StartupInfo: TStartupInfo; ProcessInformation: TProcessInformation; begin FillChar(StartupInfo, SizeOf(StartupInfo), 0); StartupInfo.cb := SizeOf(StartupInfo); StartupInfo.wShowWindow := sw_ShowNormal; CreateProcess(PChar(ParamStr(0)), '', nil, nil, False, 0, nil, nil, StartupInfo, ProcessInformation); end; initialization finalization if RestartProgram then DoReStart; end.
Gibt die Version (3 Ebenen) und den Build-Count zurück.
uses windows; function GetCurrentVersion: String; var VerInfoSize: DWORD; VerInfo: Pointer; VerValueSize: DWORD; VerValue: PVSFixedFileInfo; Dummy: DWORD; begin VerInfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy); GetMem(VerInfo, VerInfoSize); GetFileVersionInfo(PChar(ParamStr(0)), 0, VerInfoSize, VerInfo); VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize); with VerValue^ do begin Result := 'Version '+IntToStr(dwFileVersionMS shr 16); Result := Result + '.' + IntToStr(dwFileVersionMS and $FFFF); Result := Result + '.' + IntToStr(dwFileVersionLS shr 16); Result := Result + ' Build ' + IntToStr(dwFileVersionLS and $FFFF); end; FreeMem(VerInfo, VerInfoSize); end;
Download für Windows: Konverter77
Bedienung: Projektverzeichnis auswählen und updaten.
Änderungen mit einem beliebigem Texteditor durchführen:
Ersetze „pl_BGRAuecontrols“ durch „pl_BGRAextra“.
Ersetze „pl_BGRAuecontrols“ durch „pl_BGRAextra“.
Ersetze alle „TuELED“ durch „TbgraLedEx“.
Im uses-Bereich: ersetze „ueled“ durch „bgraExLed“
Nachfolgend: Alle Variablendeklaratioinen vom Typ „TuELED“ durch „TbgraLedEx“ ersetzen.
Danach das Projekt mit CT Version 7.7 öffnen und im Projektinspektor auf verwaiste Abhängigkeiten kontrollieren.