Announcement

Collapse
No announcement yet.

Componenten(objects) zur Laufzeit erstellen!

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

  • Componenten(objects) zur Laufzeit erstellen!

    ich wollte frage, ob es möglich ist z.b. nen Panel erst zur laufzeit zu erstellen (create) bzw. zu initialisieren, ohne das man eben vorher eins auf der form erstellt bzw. hinzugefügt hat!!

  • #2
    hallo,<br>
    <br>
    <pre>
    <b>procedure</b> TForm1.CreatePanel();
    <b>var</b>
    MyPanel:TPanel;
    <b>begin</b>
    MyPanel := TPanel.Create( self );
    MyPanel.SetBounds( 10,10,20,20 );
    MyPanel.SetParent( self );
    <b>end</b>;
    </pre>
    <br>
    Achtung: das Panel muss bein schliesen des Formes mit Free wieder gelöscht werden.
    <br>
    <br>
    mfg<br>
    Simon Rot

    Comment


    • #3
      Nein, es muss nicht geloescht werden. TPanel.Create(Self) traegt Self = Form1 als Owner ein. Der Owner loescht aber die von ihm geownten (Baeh-Wort) Komponenten wenn er selbst geloescht wird

      Comment


      • #4
        Hier noch eine Variante ohne lokale Variable.
        <pre>
        procedure TForm1.CreatePanel;
        begin
        with TPanel.Create(Self) do
        begin
        SetBounds(10, 10, 20, 20);
        Parent := Self;
        end;
        end;
        </pre&gt

        Comment


        • #5
          so und nun zu einen weiterem problem:
          wie kann ich nen item aus ner listbox, indem ich mit der linken maustaste draudrück, aus der listbox ziehen und sich der ausgewählte string des items löscht und dessen name auf einem label erscheint, dass ich aber erst zur laufzeit createn will. kuz gesagt ich markier ein einzelnes item in ner listbox indem ich mit der maus draufdrück, lass sie gedrückt und zieh die maus auf die form raus und in dem monent wo ích ausserhalb der form bin und die maus losslasse soll nun an dieser stelle das label erscheinen, dessen caption der name oder die bezeichnung des strings (items) war

          Comment

          Working...
          X