Liste über Checkboxes
-
Habe folgendes Problem:
Möchte gerne eine Liste von meinen Checkboxes anlegen um durchiterieren zu
können, aber irgendwie funktioniert das noch nicht ganz!Gui.h list<CheckBox^> *readersSelect;
Gui.cpp readersSelect = new list<CheckBox^>(); readersSelect->push_back(cb_Reader1);
Ergibt folgende Fehlermeldung:
cannot convert parameter 1 from 'System::Windows::Forms::CheckBox ^' to 'System::Windows::Forms::CheckBox ^const &'
Ich hätte das sonst so gelöst
Gui.h list<CheckBox*> *readersSelect; // brauch hier aber CheckBox^
Wie löse ich das am Besten, und was bedeutet das ^?
Danke und mfg
leon22
-
^ Steht dafür, dass es sich um einen Managed Datentyp handelt.
Ich kann mich irren, aber für mich sieht das aus als wölltest du einen Zeiger mit einer Liste überschreiben. - Das kann so nicht funktionieren.
Du versuchst sozusagen eine Speicheradresse mit einer Liste von Objekten zu überschreiben.
-
Nein, das sollte schon so funktionieren!
mfg leon22
-
@leon22:
- Warum zur Hölle mischsts Du native und managed (std::list<..>native und CheckBox^
managed)
Tu es nicht!
- Warum zur Hölle soll die std::list nicht als Member der Klasse sein, sondern ein Pointer auf eine std::list<..> (welche dann mit new erzeugt wird)?Nimm array<CheckBox> listBoxes; oder eine andere .NET Collection.
Was das ^ bedeutet hat inflames ja schon erwähnt.
Aber ey, das Hauptproblem ist mal wieder dass managed und native gemischt werden und Du merkst es nicht mal.
Nimm nicht C++/CLI für dein Projekt. Es ist nicht geeignet ausser Du bist ein Masochist und meidest Erfolgserlebnisse.
Ev. zur Hilfe noch das zu Gemüte führen:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-263084.htmlSimon
-
-
!Achtung schrieb:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-270866.html
Danke!
Allerdings bin ich von der Fa. auf Visual Studio 2008 (kein Express) gebunden und programmiere schon seit einigen Jahren in C/C++ mit gcc (allerdings eben bis jetzt noch nicht in Visual Studio) !mfg
-
C++/CLI ist etwas komplett anderes als ISO C++.
C# und C hat auch nur das C im Namen gemeinsam, sonst nichts.Ich halte mal fest:
- Du hast schon erfahrung mit (ISO) C++ mit dem gcc Kompiler.
- Jetzt möchtest Du dasselbe mit VS, und das geht, auch (ISO) C++.
- Also: neues Projekt, welches nichts mit CLR im Name hat.
-
Zusätzlich zum Beitrag von Theta, den Windows Forms Designer kannst du in dem Fall und solltest du auch nicht verwenden.
Hab gerade keinen Namen parrat aber es gibt im Internet ein paar gute GUI Bibliotheken, wenn mich nicht alles täuscht wurde / wird hier irgendwo im Forum versteckt auch eine entwickelt.
-
Hier würds eine Übersicht geben (ist nicht die einzige):
http://www.kharchi.eu/wiki/doku.php?id=cpp:gui:libs