Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: TPageControl: nach schliesen geht nicht mehr viel :/

  Alt 20. Nov 2004, 21:50
Moin Red Dragon,

was mir auffällt:
Beim Schliessen korrgierst Du Dein Pages Array nicht.
Das enhält dann ja einen ungültigen Eintrag.

Wozu dient das überhaupt? Im PageControl ist ja schon ein TabSheet Array enthalten.

Öffnen könntest Du ja so machen:

Delphi-Quellcode:
procedure TForm1.NewTabsheet;

var
  tsWork : TTabSheet;

begin
  tsWork := TTabSheet.Create(PageControl1);
  tsWork.PageControl := PageControl1;
  tsWork.Caption := 'Neu Datei';
  with TSynEdit.Create(tsWork) do begin
    Align := alClient;
    Gutter.ShowLineNumbers := true;
    Parent := tsWork;
  end;
  PageControl1.ActivePageIndex := PageControl1.pagecount-1;
end;
Schliessen dann so wie gehabt,allerdins solltest Du noch prüfen, ob überhaupt noch ein Tabsheet da ist, das geschlossen werden könnte.

Funktionen wie kopieren so:

Delphi-Quellcode:
procedure TForm1.Kopieren1Click(Sender: TObject);

var
  cmpWork : TComponent;
  iIndex : integer;

begin
  for iIndex := 0 to PageControl1.Pages[PageControl1.ActivePageIndex].ComponentCount-1 do begin
    if PageControl1.Pages[PageControl1.ActivePageIndex].Components[iIndex] is TSynEdit then begin
      (PageControl1.Pages[PageControl1.ActivePageIndex].Components[iIndex] as TSynEdit).CopyToClipboard;
      break;
    end;
  end;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat