Vcl.Themes.TStyleManager.SystemHooks
Delphi
class property SystemHooks: TSystemHooks read FSystemHooks write SetSystemHooks default [shMenus, shDialogs, shToolTips];
C++
/* static */ __property TSystemHooks SystemHooks = {read=FSystemHooks, write=SetSystemHooks, default=7};
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
property | public | Vcl.Themes.pas Vcl.Themes.hpp |
Vcl.Themes | TStyleManager |
Beschreibung
Mit der Eigenschaft SystemHooks können Sie mit Stilen versehene Menüs, Standarddialogfelder und Kurzhinweise anzeigen.
Wenn der VCL-Anwendung mit dem TStyleManager ein Stil zugewiesen wird, zeigen die folgenden Werte mit Stilen versehene Menüs, Standarddialogfelder und Kurzhinweise entsprechend dem festgelegten Stil an.
Die Eigenschaft enthält standardmäßig diese Werte:
- shMenus zeigt mit Stilen versehene Menüs an.
- shDialogs zeigt mit Stilen versehene Standarddialogfelder an. (Nur für Seattle und höhere Versionen)
- shToolTips zeigt mit Stilen versehene Kurzhinweise an. (Nur für Seattle und höhere Versionen)
Um einen System-Hook zu aktivieren/deaktivieren, fügen Sie einfach den Wert aus der Aufzählungseigenschaft hinzu bzw. entfernen ihn.
Zum Beispiel:
- Verwenden Sie TCheckBox, um ein mit Stilen versehenes Dialogfeld anzuzeigen.
- Verwenden Sie das Ereignis OnClick einer Schaltfläche, um eine TOpenDialog-Komponente auszuführen.
- Hinweis: Die Standarddialogfelder-Komponenten befinden sich in der Kategorie Dialoge der Tool-Palette.
Für Delphi:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
//When checking the checkbox, the value is added to the property and common dialog ares styled.
TStyleManager.SystemHooks := TStyleManager.SystemHooks + [shDialogs]
else
//When unchecking the checkbox, the value is removed from the property and the style does not apply to common dialogs.
TStyleManager.SystemHooks := TStyleManager.SystemHooks - [shDialogs]
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
OpenDialog1.Execute; //Opens the dialog.
end;
Für C++:
void __fastcall TForm1::CheckBox1Click(TObject *Sender)
{
if (CheckBox1->Checked) {
//One possible way to add the value.
TStyleManager::SystemHooks = TStyleManager::SystemHooks + (TStyleManager::TSystemHooks() << TStyleManager::TSystemHook::shDialogs);
//Another possible way to add the value.
StyleManager::SystemHooks = TStyleManager::SystemHooks << TStyleManager::TSystemHook::shDialogs; }
else {
//One possible way to remove the value.
TStyleManager::SystemHooks = TStyleManager::SystemHooks - (TStyleManager::TSystemHooks() << TStyleManager::TSystemHook::shDialogs);
//Another possible way to add the value.
TStyleManager::SystemHooks = TStyleManager::SystemHooks >> TStyleManager::TSystemHook::shDialogs; }
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
OpenDialog1->Execute(); //Opens the dialog.
}