Announcement

Collapse
No announcement yet.

Ermittlung der angeklickten Komponente!

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ermittlung der angeklickten Komponente!

    Hallo,

    ich lese sämtliche Unterverzeichnisse eines Ordners ein und zeige den Name des Verzeichnisses dann in StaticText.caption
    an. Da ich vorher nicht weiß, wieviele Unterverzeichnisse es gibt, generiere ich mir pro Unterverzeichnis ein Panel und darauf ein Image und StaticText. Das funktioniert auch alles super, aber wenn ich auf das Image klicke (OnClick) bekomme ich immer den Wert des zuletzt angelegten StaticText zurück und nicht den Wert des angeklickten Textes.
    Kann mir jemand helfen, wie ich das hinbekomme?

    Danke!

    <PRE>
    var
    MyPanel: TPanel;
    MyImage: TImage;
    Mystatictext: TStaticText;
    ...

    **Anfang Schleife (Läuft pro Verzeichnis einmal durch)
    begin
    MyPanel := TPanel.Create(Form1);
    with MyPanel do begin
    Parent := Form1;
    Height := 108;
    Width := 110;
    ...
    end;
    MyImage := TImage.Create(MyPanel);
    with MyImage do begin
    Parent := MyPanel;
    Height := 58;
    Width := 46;
    Picture.LoadFromFile('.\ordner.bmp');
    OnClick := ORDNER_KLICK;
    end;
    MyStaticText := TStaticText.Create(MyPanel);
    with MyStaticText do begin
    Parent := MyPanel;
    Height := 31;
    Width := 106;
    end;
    end;
    **Ende der Schleife

    procedure TForm1.ORDNER_KLICK(sender: TObject);
    begin
    label1.caption := Mystatictext.caption;
    //hier soll immer das angeklickte Verzeichnis übergeben werden!
    end;
    </PRE>

  • #2
    Probier mal<pre>
    Label1.Caption := (Sender as TStaticText).Caption;</pre>
    Und die Variablen MyPanel etc. solltest du nicht global deklarieren, sondern lokal in der Routine, wo sie verwendet werden.
    <p>
    HTH, Uli

    Comment


    • #3
      Hallo Ulrich,

      ich danke Dir. So hat es funktioniert! Zwar hatte ich erst noch eine Fehlermeldung bekommen, da ich ja das Image anklicke und StaticText nicht der Sender ist, aber ich speicher nun das Verzeichnis zusätzlich noch in Image.hint und übergebe dieses Feld!

      Gruß Stepha

      Comment

      Working...
      X