erzeugen von benutzerelementen



  • Hallo

    Und trotzdem hast du noch nichts über das Framework gesagt. MFC, wxWidgets,.net,...

    chrische



  • microsoft .net framework 2.0



  • Hallo

    Ich lag richtig. 😃

    Stell deine Frage doch das nächste mal im entsprechenden Subforum. Ein Mod wird dich gleich verschieben und dann können dir die jeweiligen Experten helfen.

    chrische



  • Dieser Thread wurde von Moderator/in CStoll aus dem Forum C++ in das Forum C++/CLI mit .NET verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Im Prinzip wie jedes andere auch. Leider sind zu wenig Informaitonen da um genau zu sagen wie Du es erledigen musst. Generell hilft aber immer ein Blick in die Initialisierungsmethode der Form. Dort erhält man sehr viel Anhaltspunkte wie man die ELemente anlegen muss damit diese dort erscheinen, wo man die haben will.



  • wie ich ein Element erstelle ist mir klar! (sieht man ja am automatisch genererierten Code)
    Durch ein Klick-Event soll nun ein neues Element erzeugt werden (für jedes Element ist die Anfanfslocation gleich!
    Allerdings weiß ich nicht wie ich die Elemente zwecks Namen usw. erzeugen soll, da ich die "Teile" in einer Animation über eine Strecke laufen lasse und so für die "Teile" immer die Location ändern muss!

    Wie kann ich die Elemente am besten erstellen? (wahrscheinlich eine blöde Frage aber C++/>CLI ist für mich ziemlich neu)



  • wie ich ein Element erstelle ist mir klar! (sieht man ja am automatisch genererierten Code)

    Allerdings weiß ich nicht wie ich die Elemente zwecks Namen usw. erzeugen soll,

    Umschreib das Problem doch mal. Was meinst Du mit "Namen" ?



  • wenn ich mein Steuerelement in die Form ziehe wird es automatisch generiert!
    -> es wird automatisch ein Namen vergeben + sonstige eigenschaften!

    sieht im Code dann ja wie folgt aus:

    this->element1 = (gcnew CommonControls::Log());
    

    ...

    Hätte versucht eine Variable mitlaufen zu lassen und diese mit einem Standardnamen zu verknüpfen -> element+i
    Ist das bei richtiger Syntax überhaupt möglich bzw gäbe es eine bessere Möglichkeit wie eine Verwaltung über ein Array! (wäre dann ja mit Zugriff sehr komfortabel!)



  • KoJack20 schrieb:

    Ist das bei richtiger Syntax überhaupt möglich bzw gäbe es eine bessere Möglichkeit wie eine Verwaltung über ein Array! (wäre dann ja mit Zugriff sehr komfortabel!)

    Verwaltung über ein Array funktioniert!

    array<System::Windows::Forms::Label^>^ LabelArray = gcnew array<System::Windows::Forms::Label^>(AnzDerElemente);
    LabelArray[i] = gcnew Label();
    // usw.........
    

    Dann musst eben für jedes Element im Array noch dein Label erstellen und zuweisen und kannst das dann später alles schön übern Index abklappern!



  • Habe mich schlau gemacht und etwas über Collections gelesen!
    Ist eine Lösung mit Collections oder einem Array vorteilhafter?



  • EIn Array dürfte schneller sein, dafür musst Du die größe vorher schon wissen. Eine Liste z.B. erlaubt es dagegen dynamisch zu bleiben und zügig Elemente zu entfernen bzw. anzuhängen.

    Wenn Du nicht weisst, wieviele Elemente auftreten werden oder immer wieder Elemente entfernen/hinzufügen musst (vorallem mittendrinn), könnte die Collection die elegantere Lösung sein.


Anmelden zum Antworten