![]() |
PageControl-tabsheet-focus
Hallo,
ich habe da ne frage und zwar ich habe auf meine anwendung ein PageControl mit 3 Tabsheet (Page1 bis Page3) was ich da möchte ist, wenn ich die Page1 wähle, dann sollte ich eine Nachrichte erhalten zb.: "Hallo Page1". Ich habe diesen folgenden Code verwendet:
Delphi-Quellcode:
aber es passiert nix. hat jemand eine Idee??
procedure TForm_Auswertung.TabSheet3Enter(Sender: TObject);
begin if ((Sender as TPageControl).ActivePage = TabSheet3) then begin showmessage('hallo tabsheet3'); end; end; grüß poter |
Re: PageControl-tabsheet-focus
Ich würde den Tabwechsel überwachen
|
Re: PageControl-tabsheet-focus
wie geht es denn mit der Überwachung?
|
Re: PageControl-tabsheet-focus
Hallo poter,
wenn ich es richtig verstanden habe, müsste es so gehen:
Delphi-Quellcode:
procedure TForm1.PageControl1Change(Sender: TObject);
begin ShowMessage('Hallo ' + PageControl1.ActivePage.Caption); end; |
Re: PageControl-tabsheet-focus
Mit dem onChange-Events
|
Re: PageControl-tabsheet-focus
nicht ganz. Ich suche etwas wie
Delphi-Quellcode:
der sinn ist, dass wenn ich eine pageControl wähle, musst ein paar daten über den Adoquery geladen werden und die Daten, die via andere PageControl zurverfügung sind, müssen gecleart werden
if PageControl2.ActivePage then
oder if PageControl2.ActivePage > 0 etc... |
Re: PageControl-tabsheet-focus
Du kannst doch in der Eventmethode die Page abfragen
|
Re: PageControl-tabsheet-focus
klar aber ich tue mich einbischen schwer mit den Synthax
|
Re: PageControl-tabsheet-focus
Meinst Du so etwas?
Delphi-Quellcode:
procedure TForm1.PageControl1Change(Sender: TObject);
begin if PageControl1.ActivePageIndex > 0 then ShowMessage('Hallo, schöne Welt'); end; |
Re: PageControl-tabsheet-focus
Leider nicht. Diese PageControl hat 3 TabSheet und jede Tabsheet bei clicken bzw. erhalten von focus muss ein ereignis lösen bzw. Daten laden
|
Re: PageControl-tabsheet-focus
Dann werte den ActivePageIndex doch einfach per case aus.
|
Re: PageControl-tabsheet-focus
wie geht das?
|
Re: PageControl-tabsheet-focus
Delphi-Quellcode:
procedure TForm1.PageControl1Change(Sender: TObject);
begin case PageControl.ActivePageIndex of 0: Machwas_mit_der_ersten_Seite; 1: Machwas_mit_der_zweiten_Seite; 2: Machwas_mit_der_dritten_Seite; end; end; |
Re: PageControl-tabsheet-focus
Delphi-Quellcode:
Case PageControl.ActivePageIndex of
1: .. 2: ... ... end; |
Re: PageControl-tabsheet-focus
Hör sich schon gut an danke. ich probiere es
|
Re: PageControl-tabsheet-focus
es Klappt nicht
|
Re: PageControl-tabsheet-focus
Hallo,
so habe ich es gelöst:
Delphi-Quellcode:
grüß
procedure TForm1.PageControl1Change(Sender: TObject);
begin if PageControl1.ActivePage.Caption = Tabsheet1.Caption then begin showmessage('hallo'); end else if PageControl1.ActivePage.Caption = Tabsheet2.Caption then begin showmessage('Na'); end else if PageControl1.ActivePage.Caption = Tabsheet3.Caption then begin showmessage('3'); end else end; poter |
Re: PageControl-tabsheet-focus
sag mal, weshalb nimmste nicht das TapSheet.onEnter ereignis?
|
Re: PageControl-tabsheet-focus
Ich habe es auch probiert aber ging nicht
|
Re: PageControl-tabsheet-focus
haste ein tTabSheet auf dein tPageControl abgelegt oder mit der rechten Maustaste ein integriertes erzeugt? Im ersten falle funktionierts...
|
Re: PageControl-tabsheet-focus
Ich habe es mit der recht taste erzeugt
|
Re: PageControl-tabsheet-focus
oder geh doch einfach bei dem entsprechenden Tabsheet in das OnShow Ereignis, das wird dann jedes mal aufgerufen wenn du das jeweilige TabSheet aufrufst.
Ich hoffe ich habe deine Frage richtig verstanden. Gruß Michi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 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 by Thomas Breitkreuz