![]() |
wert "durchreichen" ?
hallo zusammen,
ich habe eine Form mit einem Eingabefeld Tedit. Auf dem Form befindet sich auch eine Scollbox mit diversen Buttons. (Artikelgruppen) Beim Klick auf einen dieser Buttons wird (vom Artikelgruppenbutton) eine weitere Scollbox mit weiteren Buttons (Artikel) erzeugt und auf dem Form angezeigt. Beim Klick auf einen dieser Artikel-Buttons braucht dieser Artikel-Button den Wert der in besagtem Tedit steht um diesen in eine DB-tabelle einzutragen. Ohne Zirkelbezug muss ich den Wert durch alle übergelagerten Instanzen( also Scollbox, Button, scollbox) durchreichen um ihn in dem Button zur Verfügung zu haben, oder gibts noch ne andere Möglichkeit? Wie gesagt, Zirkelbezug möchte ich, wenn möglich vermeiden. danke für eure ideen Gruss KHH |
AW: wert "durchreichen" ?
Zitat:
|
AW: wert "durchreichen" ?
Du hast also nur eine einzige Form? Wieso greifst du dann nicht einfach auf das Edit zu? :gruebel:
|
AW: wert "durchreichen" ?
Zitat:
und Tbutton erzeugt beim Klick eine weitere Scollbox mit weiteren Buttons. Diese Buttons benötigen den Wert aus dem TEdit. |
AW: wert "durchreichen" ?
Zitat:
wie bekomme ich den Wert an den Button übergeben, von dem die Form ja gar nix weis :-( |
AW: wert "durchreichen" ?
Ich habe nach einer Ableitung gefragt; anscheinend reden wir aneinander vorbei:
Das ist eine (relativ sinnfreie) Ableitung von TButton:
Delphi-Quellcode:
Verwendest du also abgeleitete Controls?
type
TMySpezialButton = class(TButton) ... public property ArtkelNr:string ...; end; |
AW: wert "durchreichen" ?
Zitat:
ja, genau so. Dieser MySpezialbutton erzeugt eine Scollbox mit MyspezialArtikelButtons, die beim Klick eben jenen Wert aus dem TEdit benötigen. |
AW: wert "durchreichen" ?
Das ist mir gerade zu verwirrend ...
Ein Button erzeugt Controls, von denen er nicht der Parent ist? (Kann er ja auch nicht.) Wer ist denn nun der Owner dieser Controls, wer der Parent? |
AW: wert "durchreichen" ?
Zitat:
Parent der Scrollboxen ist jeweils das Form. parent der Buttons die zugehörende Scrollbox. |
AW: wert "durchreichen" ?
Wenn das Edit "Edit1" hieße, das Form "Form1" bzw. "TForm1" und der neue Button "ButtonNeu" (ja, verdammt kreativ, ich weiß), dann müsstest du doch von dem neuen Button aus so dorthin kommen:
Delphi-Quellcode:
TForm1(ButtonNeu.parent.parent).Edit1.Text
Mit dem ersten Parent bist du bei der Scrollbox, von da aus mit dessen Parent beim Form1 und dort findest du ja dann deine Edit-Komponente wieder. Bis denn Bommel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:10 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