![]() |
Meldet der Compiler die Fehlermeldung, oder das Programm, wenn es läuft? Wenn das Programm die Meldung bringt (was ich annehme), dann weist du MyShow nicht nur dem OnShow-Ereignis der TTabSheets zu, sondern noch irgend einem anderen Objekt.
|
du nimmst richtig...werde das mal prüfen
Danke |
Jetzt krieg ich gleich die Mücken..
jetzt geht halbwegs...aber der Witz ist: a) kommt immer die gleiche ShowMessage b) kommt sie nur wenn ich aufs Form klicke und nicht auf den Tabsheet (Mein Hund guckt schon komisch..wegen meinen Kraftausdrücken die ab und zu in den Raum schallen)
Code:
unit Unit5;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls; type TForm5 = class(TForm) PageControl1: TPageControl; procedure FormCreate(Sender: TObject); private { Private-Deklarationen } procedure Myclick (Sender: TObject); public end; var Form5: TForm5; implementation {$R *.DFM} procedure TForm5.Myclick(Sender: TObject); begin case TTabsheet(Sender).Tag of 0 : ShowMessage('Jawoll'); 1 : ShowMessage('jawoll1'); end; end; procedure TForm5.FormCreate(Sender: TObject); var i: integer; begin PageControl1.MultiLine := True; with PageControl1 do for i := 0 to 12 do with TTabSheet.Create(Self) do begin PageControl := PageControl1; Caption := IntToStr(i); Tag := i; onClick := Myclick; case i of 0 : Caption :='Einleitung'; 1 : Caption :='Gerechtigkeitsstreben'; 2 : Caption :='Kampfbereitschaft'; 3 : Caption :='Sicherheitsstreben'; 4 : Caption :='Harmoniebedürfnis'; 5 : Caption :='Fröhlichkeit'; 6 : Caption :='Fremdbestimmung'; 7 : Caption :='Sentimentalität'; 8 : Caption :='Hilfsbereitschaft'; 9 : Caption :='Intellektualität'; 10 : Caption :='Erfolgswille'; 11 : Caption :='Sensibilität'; 12 : Caption :='Selbstbestimmung'; end; end; end; end. |
Ich hab den Fehler:
Das onClick := Myclick; bezieht sich auf TForm5 und nicht auf TTabSheet, da TTabSheet gar kein OnClick Ereignis hat. Das "OnClick"-Ereignis für die Register kannst du im OnChange von TPageControl abfangen:
Code:
Das OnShow von TTabSheet wäre aber glaube ich besser. Ich weiß natürlich auch nicht, was du genau damit vor hast. Probiere einfach beides aus und entscheide dann, was besser ist.
procedure TForm5.PageControl1Change(Sender: TObject);
begin case PageControl1.ActivePage.TabIndex of 0: ... 1: ... end; end; |
yepp!
Activepage, genau das wars!! Danke |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:03 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