Vcl.Themes.TStyleManager.SystemHooks

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

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:

  1. Verwenden Sie TCheckBox, um ein mit Stilen versehenes Dialogfeld anzuzeigen.
  2. 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.
}

Siehe auch