Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi PageControl-tabsheet-focus (https://www.delphipraxis.net/98809-pagecontrol-tabsheet-focus.html)

poterp 1. Sep 2007 21:49


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:
procedure TForm_Auswertung.TabSheet3Enter(Sender: TObject);
begin
   if ((Sender as TPageControl).ActivePage = TabSheet3) then
     begin
   showmessage('hallo tabsheet3');
 end;
end;
aber es passiert nix. hat jemand eine Idee??
grüß
poter

mkinzler 1. Sep 2007 21:51

Re: PageControl-tabsheet-focus
 
Ich würde den Tabwechsel überwachen

poterp 1. Sep 2007 21:53

Re: PageControl-tabsheet-focus
 
wie geht es denn mit der Überwachung?

Matze 1. Sep 2007 21:54

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;

mkinzler 1. Sep 2007 21:54

Re: PageControl-tabsheet-focus
 
Mit dem onChange-Events

poterp 1. Sep 2007 22:06

Re: PageControl-tabsheet-focus
 
nicht ganz. Ich suche etwas wie
Delphi-Quellcode:
if PageControl2.ActivePage then
oder
if PageControl2.ActivePage > 0
etc...
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

mkinzler 1. Sep 2007 22:09

Re: PageControl-tabsheet-focus
 
Du kannst doch in der Eventmethode die Page abfragen

poterp 1. Sep 2007 22:14

Re: PageControl-tabsheet-focus
 
klar aber ich tue mich einbischen schwer mit den Synthax

DeddyH 1. Sep 2007 22:17

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;

poterp 1. Sep 2007 22:25

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

DeddyH 1. Sep 2007 22:27

Re: PageControl-tabsheet-focus
 
Dann werte den ActivePageIndex doch einfach per case aus.

poterp 1. Sep 2007 22:29

Re: PageControl-tabsheet-focus
 
wie geht das?

DeddyH 1. Sep 2007 22:32

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;

mkinzler 1. Sep 2007 22:33

Re: PageControl-tabsheet-focus
 
Delphi-Quellcode:
Case PageControl.ActivePageIndex of
  1: ..
  2: ...
  ...
end;

poterp 1. Sep 2007 22:37

Re: PageControl-tabsheet-focus
 
Hör sich schon gut an danke. ich probiere es

poterp 1. Sep 2007 23:11

Re: PageControl-tabsheet-focus
 
es Klappt nicht

poterp 1. Sep 2007 23:31

Re: PageControl-tabsheet-focus
 
Hallo,
so habe ich es gelöst:
Delphi-Quellcode:
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;
grüß
poter

grenzgaenger 1. Sep 2007 23:58

Re: PageControl-tabsheet-focus
 
sag mal, weshalb nimmste nicht das TapSheet.onEnter ereignis?

poterp 2. Sep 2007 00:01

Re: PageControl-tabsheet-focus
 
Ich habe es auch probiert aber ging nicht

grenzgaenger 2. Sep 2007 08:09

Re: PageControl-tabsheet-focus
 
haste ein tTabSheet auf dein tPageControl abgelegt oder mit der rechten Maustaste ein integriertes erzeugt? Im ersten falle funktionierts...

poterp 2. Sep 2007 11:09

Re: PageControl-tabsheet-focus
 
Ich habe es mit der recht taste erzeugt

valu 16. Dez 2007 17:04

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 22:26 Uhr.

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