Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Eigene Kompo / Dynamisch erstellt / Form best. erkennen (https://www.delphipraxis.net/86714-eigene-kompo-dynamisch-erstellt-form-best-erkennen.html)

owolicious 18. Feb 2007 13:12


Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
hi,
wusste nich wie ich den titel nennen soll?!?
also es geht darum: ich hab eine komponente entwickelt. diese binde ich dynamisch ein.
wie kann ich jetzt folgendes realisieren: ich will dass wenn ich auf eine komponente klicke dessen eigenschaften über das form verändern können, also angenommen ich klick auf die komponente3 dann kann ich in ein edit die caption eingeben...
ich hab leider garkeine ahnung wie ich das realisieren kann? vllt über messages? ich hab ehrlich gesagt garkeine ahnung

achja die kompo is abgeleitet von tcustomcontrol...

vielen dank im vorraus :)

owo

Christian Seehase 18. Feb 2007 13:16

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Moin owo,

ehrlich gesagt, habe ich bislang nicht verstanden, was Du überhaupt machen willst. :gruebel:

Neutral General 18. Feb 2007 13:17

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Ich würde mir eine Variable machen.. z.B so:

Delphi-Quellcode:
var Selected: TMyCompo;
Dann im OnClick deiner Komponenten schreibst du

Delphi-Quellcode:
Selected := TMyCompo(Sender);
Dann machst du ein Button und ein Edit auf dein Formular
und in die Button OnClick procedure schreibst du dann sowas:

Delphi-Quellcode:
Selected.Caption := Edit1.Text;
So würd ichs machen, aber ich glaube bei den Jedis is da nochwas dabei was vielleicht besser ist.. weiß aber nichtmehr wie das heißt...

Gruß
Neutral General

owolicious 18. Feb 2007 13:19

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
hi ;)

also: ich habe eine komponente die anklickbar is und ein caption hat... wenn ich davon mehrere erstelle (dynamisch), möchte ich danach z.b. die caption von einem ändern. wie kann ich es jetzt realisieren dann wenn ich dann eine komponente anklicke deren caption ändere... also nehm mal an ich hab ein edit auf dem form und 3 von meinem komponenten. je nach dem welche komponente ich anklicke möchte ich über das eine edit die caption ändern...

jetzt besser? :)

Neutral General 18. Feb 2007 13:20

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Zitat:

Zitat von owolicious
hi ;)

also: ich habe eine komponente die anklickbar is und ein caption hat... wenn ich davon mehrere erstelle (dynamisch), möchte ich danach z.b. die caption von einem ändern. wie kann ich es jetzt realisieren dann wenn ich dann eine komponente anklicke deren caption ändere... also nehm mal an ich hab ein edit auf dem form und 3 von meinem komponenten. je nach dem welche komponente ich anklicke möchte ich über das eine edit die caption ändern...

jetzt besser? :)

Siehe meine Beschreibung ;)

owolicious 18. Feb 2007 13:22

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
hi
aber wenn ich in die form unit das selected definiere, dann kennt das ja meine komponenten unit garnicht in der ich das onclick definiere...

Christian Seehase 18. Feb 2007 13:28

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Moin Owo,

redest Du jetzt Änderungen zur Lauf- oder zur Designzeit?

Neutral General 18. Feb 2007 13:28

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Delphi-Quellcode:
TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
   //...
  private
    { Private-Deklarationen }
  public
    DynMyKompo: Array[0..2] of TMyKompo;
    procedure MyOnClick(Sender: TObject);
  end;

//...

var
  Selected: TMyKompo;

//...

procedure TForm1.MyOnClick(Sender: TObject);
begin
  Selected := TMyKompo(Sender);
end;

procedure TForm1.FormCreate(Sender: TObject);
var i: Integer;
begin
  for i:= 0 to 2 do
  begin
    DynMyKompo[i] := TMyKompo.Create(Self);
    DynMyKompo[i].Parent := Self;
    DynMyKompo[i].OnClick := MyOnClick;
    DynMyKompo[i].x := i*100;
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Selected.Caption := Edit1.Text;
end;
Verstanden ? ;) *g*

Gruß
Neutral General

owolicious 18. Feb 2007 13:28

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
Laufzeit!!

owolicious 18. Feb 2007 13:32

Re: Eigene Kompo / Dynamisch erstellt / Form best. erkennen
 
hmm aber ich hab schon ein onClick in der Komponente selbst definiert... soll ich dass dann einfach mitnehmen oder? oder kann ich irgendwie sowas wie inherited verwenden?? bzw nich onClick sonder heißt bei mir onButton(var msg: tmessage) mit message wm_lbuttondown


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:58 Uhr.
Seite 1 von 2  1 2      

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