Membres inscrits :2359
Membres en ligne : 0
Invités en ligne : 4


|
Conversation : command enabling |
c.panel (Membre)
Lieu: Isere
Inscrit le : 01-05-2008
Messages: 10
Snippets: 0
Tutoriels: 0
Site web
Hors ligne |
Bonjour,
Je suis débutant avec wxWidgets et essaye de saisir ses forces et ses faiblesses dans le but de peut être basculer sur ce framework, et n'en suis qu'au début de l'apprentissage.
exite t-il un moyen de faire en sorte qu'une commande soit validée ou non (par ex dans un menu grisée ou non) automatiquement en fonction d'une procédure qui déterminerait suivant l'état de l'application si la commande est valide ou non ? J'essaye en fait de retrouver les fonctionnalités d'autres frameworks dans wxWidgets : un evénement "wxCommandEnable" qui serait déclenché lors de l'affichage du menu ou bouton et qui permettrait à l'application par l'intermédaire d'une réponse implémentée de la part de l'utilisateur de savoir si une commande doit être validée ou non.
sinon, faut il alors chaque fois que l'application change "d'état" gérer soi même les validations des commandes... ?
|
|
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1390
Snippets: 25
Tutoriels: 6
Site web
Hors ligne |
Salut.
Il y a effectivement une méthode très facile à mettre en oeuvre pour activer ou non un élément de menu et/ou un bouton de barre d'outil.
Il s'agit de l'événement "UpdateUI".
Par exemple, pour gérer l'état "activé/désactivé" d'une entrée de menu "Enregistrer" dont l'ID est wxID_SAVE, tu connectes une méthode de ta wxFrame à l'événement wxUpdateUI relatif à cet ID.
Code wxWidgets:BEGIN_EVENT_TABLE(MainFrame, wxFrame) ...... EVT_UPDATE_UI(wxID_SAVE, MainFrame::OnUpdateUI_Save) ...... END_EVENT_TABLE() void MainFrame::OnUpdateUI_Save(wxUpdateUIEvent &event) { event.Enable(true ou false); }
A savoir que ça marche aussi pour un simple bouton.
En espérant avoir répondu à ta question. Si tu as besoin de plus d'infos, n'hésite-pas.
@+ Xav'
|
Le nouveau portail wxWidgets francophone : www.wxdev.fr Ben en fait, vous y êtes déjà ... et effectivement, depuis le temps, ce n'est plus tellement nouveau....
|
c.panel (Membre)
Lieu: Isere
Inscrit le : 01-05-2008
Messages: 10
Snippets: 0
Tutoriels: 0
Site web
Hors ligne |
Ok! et merci xaviou, je veux aller trop vite, "UI Updates" est effectivement détaillé page 250 du livre "wxWidgets". question subsidiaire : que veux dire UI ? user Interface ?
|
|
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1390
Snippets: 25
Tutoriels: 6
Site web
Hors ligne |
c.panel:question subsidiaire : que veux dire UI ? user Interface ? C'est exactement ça.
Donc littéralement : UpdateUI = Mise à jour de l'interface utilisateur.
@+ Xav'
|
Le nouveau portail wxWidgets francophone : www.wxdev.fr Ben en fait, vous y êtes déjà ... et effectivement, depuis le temps, ce n'est plus tellement nouveau....
|
|