Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi [PageControl] tabs schliesen (https://www.delphipraxis.net/32457-%5Bpagecontrol%5D-tabs-schliesen.html)

tester123 23. Okt 2004 15:34


[PageControl] tabs schliesen
 
hallo,

ich wollte wissen wie man einzelne tabsheets in pagecontrol schiesen kann...
erstellen ist relativ einfach

Delphi-Quellcode:
TTabSheet.Create(PageControl1);
aber wie schlies ich das dann wieder?

omata 23. Okt 2004 18:22

Re: [PageControl] tabs schliesen
 
Moin,

das geht z.B. so...

Delphi-Quellcode:
while PageControl.PageCount > 0 do
  PageControl.Pages[0].free;
so werden alle TabSheets gelöscht.

MfG
Thorsten

tester123 24. Okt 2004 13:17

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von omata
Moin,

das geht z.B. so...

Delphi-Quellcode:
while PageControl.PageCount > 0 do
  PageControl.Pages[0].free;
so werden alle TabSheets gelöscht.

MfG
Thorsten

super perfekt thx

tester123 24. Okt 2004 16:56

Re: [PageControl] tabs schliesen
 
hmmm ok also schliesen geht aber wenn ich jetzt neue mache sind die im background :( hab das schon über ActivePage probiert aber ich muss irgendwas falsch gemcht haben :/ hat vieleicht jemand ne idee das ich schliesen kann und die neu erstellten dann auch wieder als aktiv erscheinen?

MrSpock 24. Okt 2004 17:14

Re: [PageControl] tabs schliesen
 
Hallo tester123,

du musst beim neuen TabSheet noch die Eigenschaft PageControl setzen:

Delphi-Quellcode:
newPage.PageControl := PageControl1;

tester123 24. Okt 2004 17:22

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo tester123,

du musst beim neuen TabSheet noch die Eigenschaft PageControl setzen:

Delphi-Quellcode:
newPage.PageControl := PageControl1;

hab ich schon gehabt :'(

Delphi-Quellcode:
  pages[pagecount-1].PageControl := PageControl1;

MrSpock 24. Okt 2004 17:24

Re: [PageControl] tabs schliesen
 
Hallo Tester123,

aber TTabsheet steht ja noch nicht im Pages Array, oder?

Delphi-Quellcode:
newPage := TTabSheet.Create(PageControl1);
   newPage.PageControl := PageControl1;

tester123 24. Okt 2004 17:27

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo Tester123,

aber TTabsheet steht ja noch nicht im Pages Array, oder?

Delphi-Quellcode:
newPage := TTabSheet.Create(PageControl1);
   newPage.PageControl := PageControl1;

doch eigentlich schon :/

Delphi-Quellcode:
  pages[pagecount-1] := TTabSheet.Create(PageControl1);
  pages[pagecount-1].PageControl := PageControl1;

MrSpock 24. Okt 2004 17:30

Re: [PageControl] tabs schliesen
 
Hallo Tester123,

hast du den Array Pages selbst definiert, oder versuchst du den Pages Array aus der PageControl Komponente zu benutzen? Letztere ist doch schreibgeschützt!?

tester123 24. Okt 2004 17:37

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo Tester123,

hast du den Array Pages selbst definiert, oder versuchst du den Pages Array aus der PageControl Komponente zu benutzen? Letztere ist doch schreibgeschützt!?

hab sie selbst definiert ist ne eigenständige funktion die auf pagecontrol zugreift...

MrSpock 24. Okt 2004 17:55

Re: [PageControl] tabs schliesen
 
Hallo tester123,

ich galube ich verstehe erst jetzt was du mit background meinst. Die Seite ist nicht aktiv!?

Delphi-Quellcode:
PageControl1.ActivePageIndex := PageControl1.PageCount-1;

tester123 24. Okt 2004 18:18

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo tester123,

ich galube ich verstehe erst jetzt was du mit background meinst. Die Seite ist nicht aktiv!?

Delphi-Quellcode:
PageControl1.ActivePageIndex := PageControl1.PageCount-1;

hmmm hatte ich eigentlich schon als

Delphi-Quellcode:
PageControl1.ActivePageIndex := PageCount-1;
dortstehen gehabt... jetzt geht zwar das das die pages im vordergrund erscheinen aber alle anderen funktionen die ich auf PageControl1.ActivePage gestützt hab drehen irgendwie durch :/ gibts vieleicht ne andere möglichkeit ein tab zu schliesen als .free; ?

MrSpock 24. Okt 2004 18:28

Re: [PageControl] tabs schliesen
 
Hallo tester123,

nicht, dass ich wüsste. Liegt es vielleicht an den Komponenten, die du in das neue TabSheet eingefügt hast!?

tester123 24. Okt 2004 18:34

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo tester123,

nicht, dass ich wüsste. Liegt es vielleicht an den Komponenten, die du in das neue TabSheet eingefügt hast!?

hmmm ich füg da einfach ein TSynEdit ....

es geht witziger weise alles korekt bis ich einmal ein tabsheet schliese... :/

MrSpock 24. Okt 2004 19:07

Re: [PageControl] tabs schliesen
 
Hallo Tester123,

wie fügst du das SynEdit Objekt ein? Ich habe es gerade einmal mit einem normales TEdit probiert, da funktioniert es ohne Probleme auch nach Einfügen und Löschen von vielen Seiten.

tester123 25. Okt 2004 04:27

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo Tester123,

wie fügst du das SynEdit Objekt ein? Ich habe es gerade einmal mit einem normales TEdit probiert, da funktioniert es ohne Probleme auch nach Einfügen und Löschen von vielen Seiten.

hmmm also bei mir geht das wie schon gesagt reibungslos bis eben free mit ins spiel kommt....

Delphi-Quellcode:
  edits[pagecount-1] := TSynEdit.Create(pages[pagecount-1]);

MrSpock 25. Okt 2004 04:35

Re: [PageControl] tabs schliesen
 
Hallo tester123,

du musst noch den Parent von SynEdit setzen. Hast du das gemacht?

tester123 25. Okt 2004 04:53

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
Hallo tester123,

du musst noch den Parent von SynEdit setzen. Hast du das gemacht?

jo ...

Delphi-Quellcode:
  edits[pagecount-1].Parent := pages[pagecount-1];

tester123 1. Nov 2004 23:43

Re: [PageControl] tabs schliesen
 
hmmmm irgendwie klappt das nich.... ich glaub ich häng mich bald auf ... :( schliesen geht aber die funktionen die sich dann auf die aktiven tabs beziehen die klappen net :/

MrSpock 2. Nov 2004 02:19

Re: [PageControl] tabs schliesen
 
:shock: Wir wollen ja nicht, dass Gerome hier noch Leichen aufsammeln muss. :shock:

Vielleicht kannst du das Projekt oder den Teil, der nicht funktioniert einmal anhängen. Ich habe ein kleines Testprogramm geschrieben, bei dem alles funktioniert. Ich habe jedoch keine SysEdit Komponente auf meinen PageControls. Tritt der Effekt nur bei der SynEdit Komponente auf oder verhalten sich auch andere Komponenten nicht korrekt?

tester123 2. Nov 2004 19:04

Re: [PageControl] tabs schliesen
 
Zitat:

Zitat von MrSpock
:shock: Wir wollen ja nicht, dass Gerome hier noch Leichen aufsammeln muss. :shock:

Vielleicht kannst du das Projekt oder den Teil, der nicht funktioniert einmal anhängen. Ich habe ein kleines Testprogramm geschrieben, bei dem alles funktioniert. Ich habe jedoch keine SysEdit Komponente auf meinen PageControls. Tritt der Effekt nur bei der SynEdit Komponente auf oder verhalten sich auch andere Komponenten nicht korrekt?

wollen wir sicher nicht (wird aber wohl bald passieren ....)

könnteste vieleicht dein prog posten könnte ich mir dann anschauen und meine fehler erkennen....

tester123 6. Nov 2004 00:40

Re: [PageControl] tabs schliesen
 
:cry: :cry: :cry:

ich glaub ich krieg das wohl nie in den griff....


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz