2017-04-09 5 views
0

Je suis nouveau avec QT donc au début, je vous prie de comprendre. Mon problème est que je voudrais dessiner à l'intérieur d'un formulaire contenu QT élargi. Ainsi, par exemple, j'ai overrided méthode paintEvent de cette façon:Dessiner à l'intérieur du widget sur le formulaire QT

void MainWindow::paintEvent(QPaintEvent *e) 
{ 
    QPainter p; 
    p.begin(this); 
    p.setBrush(Qt::red); 
    p.drawRect(10, 10, 100, 100); 
    p.end(); 
} 

Et tout est bon, rectangle rouge apparaît sur le formulaire. Ensuite, j'ajouté par exemple QWidget quelque part sur ma forme et je voudrais attirer dans ce widget de cette façon:

void MainWindow::paintEvent(QPaintEvent *e) 
{ 
    QPainter p; 
    p.begin(ui->widget); 
    p.setBrush(Qt::red); 
    p.drawRect(10, 10, 100, 100); 
    p.end(); 
} 

Mais rien n'apparaît dans ce widget. Est-ce possible ? Ou peut-être existe-t-il d'autres méthodes pour atteindre mon objectif? La chose la plus importante pour moi est que je voudrais avoir une petite place sur ma forme qui est conçue uniquement pour dessiner à l'intérieur.

Merci de votre compréhension et toute aide :)

+1

double possible de [? Comment dessiner avec QPainter sur un widget spécifique d'un groupe de widgets à QMainWindow] (http://stackoverflow.com/questions/42663880/comment dessiner-avec-qpainter-sur-un-widget-spécifique-d'un groupe-de-widgets-in-qmainw) –

Répondre