Bonjour,
J'ai besoin de créer des boutons dynamiquement (car je ne sais pas combien j'en aurai à l'avance) avec wxWidgets, comment puis-je procéder ?
Merci bien,
Eddy.
Bonjour,
J'ai besoin de créer des boutons dynamiquement (car je ne sais pas combien j'en aurai à l'avance) avec wxWidgets, comment puis-je procéder ?
Merci bien,
Eddy.
de la meme facon, je pense :
tu crée ta var wxButton, puis tu la stocke.wxButton::wxButton
wxButton()
Default constructor.
wxButton(wxWindow* </B>parent, wxWindowID id, const wxString& </B>label = wxEmptyString, const wxPoint& </B>pos = wxDefaultPosition, const wxSize& </B>size = wxDefaultSize, long style = 0, const wxValidator& </B>validator = wxDefaultValidator, const wxString& </B>name = "button")
Constructor, creating and showing a button.
The preferred way to create standard buttons is to use default value of label. If no label is supplied and id is one of standard IDs from this list, standard label will be used. In addition to that, the button will be decorated with stock icons under GTK+ 2.
Parameters
parent
- Parent window. Must not be NULL.
id
- Button identifier. A value of wxID_ANY indicates a default value.
label
- Text to be displayed on the button.
pos
- Button position.
size
- Button size. If the default size is specified then the button is sized appropriately for the text.
style
- Window style. See wxButton.
validator
- Window validator.
name
- Window name.
pense a lui declarer un eventHandler dynamiquemnt (->seteventHandler() )
et ca devrait passer
Très bien, j'y avais pensé mais avant de m'engager je préférais savoir si il n'y avait pas de techniques particulières qd à l'instanciation des éléments, la déclaration des événements ...
Merci, j'essaie cela la semaine prochaine et vous tiens au courant
++ Eddy.
bein, je suis pas un pro, donc, prend pas mes paroles pour plus qu'elles ne sont : une tentative pour t'aider.
si je t'ai repondu, c'est parceque, d'apres mon vecu, peut de monde sur ce forum utilise wxWidgets, donc, sans ma reponse de non initié tu risquait de pas en avoir...
Oki, voici la solution :
// Variables :
wxButton* btn;
// Début du traitement.
for (int i = 1; i <= s->nbBouton; i ++) {
// Création dynamique du bouton n°i.
btn = new wxButton(panelJobsOrdonnes, -1, wxT(IntToString(i)), wxPoint(coord1, coord2), wxSize(taille1, taille2)));
}
heu...Envoyé par Eldered
a chaque iteration, tu reassigne ton pointeur?
donc, tu n'a plus aucun pointeur vers tous les boutons precedement crées dans ta boucle?
c'est pas bon ca :'(
Sisi, je les stocke dans un vecteur stl ^^
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager