2011-12-20 4 views
0

Sur ma fenêtre principale j'ai deux boutons Qpush: ajouter un bouton d'objet et annuler le bouton. Lorsque je clique sur le bouton Ajouter un objet, il restitue un modèle OpenGL et je veux qu'il rende un autre modèle lorsque je clique de nouveau sur le bouton Ajouter. Le bouton Annuler doit annuler la dernière action.Qt OpenGL GUI: Ajouter et Annuler Qpushbutton

Comment puis-je y parvenir?

+0

Je suppose que 'C++'? Jetez un oeil à [événements et signaux] (http://zetcode.com/tutorials/qt4tutorial/eventsandsignals/). – Blender

+1

Donc, vous voulez juste aller et venir entre les éléments d'un ensemble de mailles? (probablement avec un wrap-around en dépassant la fin?). Cela ne ressemble pas vraiment à une question OpenGL ou Qt si c'est le cas. – Bart

+0

Il s'agit de la programmation GUI de base. Tout d'abord, vous devez être capable de faire * quelque chose * quand un bouton particulier est pressé. Peu importe quoi; juste obtenir la partie de détection au travail. Ensuite, vous devez trouver comment avoir plusieurs modèles rendus, de sorte que vous pouvez ajouter et supprimer de la liste. Enfin, vous pouvez associer ce concept aux boutons Ajouter/Supprimer. –

Répondre

1

Modèle OpenGL, et je veux qu'il rende un autre modèle lorsque je clique à nouveau sur le bouton Ajouter.

Vous confondez OpenGL avec un graphe de scène. OpenGL ne conserve pas de scène d'objets ou de géométrie. Je dessine juste les choses. Si vous modifiez quelque chose, vous devez redessiner l'ensemble des données de scène que vous gérez. Annuler/Rétablir deviennent des opérations sur vos données de scène. Et après les opérations sur la scène, vous pouvez utiliser OpenGL dessiner la scène.

+0

Merci. J'ai connecté le bouton Ajouter pour appeler une fonction qui dessine la scène avec un objet, puis j'ai connecté le bouton Annuler pour redessiner la scène sans cet objet. Ça va! Mais maintenant, comment puis-je faire le bouton Ajouter pour dessiner différents objets à chaque clic, disons que je clique en premier, il ajoute object1, je clique deuxième fois et il ajoute l'objet 2. Puis je clique sur Annuler, et il dessine scène avec seulement objet 1, puis je clique à nouveau sur annuler et il dessine la scène sans aucun objet? – DevEx