Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.316 Beiträge
 
Delphi 12 Athens
 
#4

AW: TPageControl - Alternative ?

  Alt 3. Mai 2024, 13:45
Hallöle...
Zitat:
Eine meiner PageControl-Anwendungen mit etlichen TabSheets braucht noch weitere.
Versuch das zu verstehen was du möchtest. Ich gehe davon aus, wegen der Menge der Reiter, ist es unübersichtlich sowohl im Code als auch in der Oberfläche...

Meine Lösung als Idee:
1. Bild
2. Code zum Aufruf des Frames oder Form
Delphi-Quellcode:
procedure TfoPreferences.tvContentChange(Sender: TBaseVirtualTree; Node: PVirtualNode);
var
  Data: PSEAMTreeDataObject;
begin
  Data := Sender.GetNodeData(Node);
  if Assigned(Data) then
  begin
    case Data^.AbsolutIndex of
      10000, 10100, 10400, 11000, 11210, 11300, 11500, 11600:
      begin
        pgcContent.ActivePage:= tsClear;
      end;
      10350:
      begin
        pgcContent.ActivePage:= tsMisc;
      end;
      10700:
      begin
        pgcContent.ActivePage:= tsContent;
        actSecurityManager.Execute;
      end;
      10710:
      begin
        pgcContent.ActivePage:= tsContent;
        actDatabaseLock.Execute;
      end;
    ...
end;
...
procedure TfoPreferences.actDatabaseLockExecute(Sender: TObject);
var
  Form: TForm;
begin
  FPreferences.PreferencesCommon.FormDictionary.TryGetValue('frDatabaseLock', Form);
  if not Assigned(Form) then
  begin
    Form := TfrDatabaseLock.Create(Application, FPreferences);
    FPreferences.PreferencesCommon.FormDictionary.Add('frDatabaseLock', Form);
  end;
  SetContentForm(Form, pnlContent, Sender, Format(conTextContentSecurity, [TAction(Sender).Caption]));
  Form.Show;
end;
Miniaturansicht angehängter Grafiken
tree.png  
  Mit Zitat antworten Zitat