2009-08-25 10 views

Répondre

2

Vous trouverez beaucoup de fonctions pratiques dans QPainter, comme drawRect.

Utilisez QWidget :: mousePressEvent, QWidget :: mouseMoveEvent et QWidget :: mouseReleaseEvent pour savoir où l'utilisateur dessine la forme.

Vous devez avoir un QImage pour les formes qui ont déjà été dessinées. Pendant que l'utilisateur crée une nouvelle forme, vous devez l'ajouter au QPixmap qui est affiché à l'utilisateur, mais n'ajoutez pas la nouvelle forme à QImage jusqu'à ce que l'utilisateur relâche le bouton de la souris. De cette façon, vous pouvez ajuster la forme qu'ils dessinent lorsqu'ils le dessinent.

0

Je suppose qu'en regardant dans le scribble example nous obtiendrons la solution exacte. Je voulais aussi faire la même chose - j'ai donc copié le code pertinent à partir de l'exemple de griffonnage et apporté quelques modifications pour le faire fonctionner comme je le souhaite.

Bien que cette question ait été posée il y a des années - toujours si quelqu'un a besoin du code - je vous aiderai.

+0

gribouiller est bon pour tracer des lignes, mais c'est horrible si vous voulez dessiner un rectangle. Est-ce ce que vous faites dans votre code? – Goddard

+0

@Goddard: Je ne comprends pas ce que vous essayez de dire. Est-ce que vous vous moquez de moi ou me demandez des explications? S'il vous plaît élaborer. – zeFree

Questions connexes