Zmień prostokątny przycisk Qt na okrągły

Próbuję stworzyć okrągły przycisk w Qt. Prosta forma za pomocą jednego przyciskuQPushButton został stworzony w projektancie. Próbuję zamienić to w okrągły przycisksetMask(). Tak szybko jaksetMask() zostanie naciśnięty przycisk zniknie. Czy trzeba utworzyć niestandardowy widget, aby utworzyć okrągły przycisk?

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMessageBox>
#include <QtGui/QPushButton>


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    ui->pushButton->setText("Test Text");
    ui->pushButton->setFixedHeight(200);
    ui->pushButton->setFixedWidth(200);

    //Set Starting point of region 5 pixels inside , make region width & height
    //values same and less than button size so that we obtain a pure-round shape

    QRegion* region = new QRegion(*(new QRect(ui->pushButton->x()+5,ui->pushButton->y()+5,190,190)),QRegion::Ellipse);
    ui->pushButton->setMask(*region);
    ui->pushButton->show();


}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    QMessageBox msgbox;
    msgbox.setText("Text was set");
    msgbox.show();

}

Uwaga: Jeśli przycisk zostanie utworzony w kodzie i zastosowany do okna przed wyświetleniem okna, wyświetlany jest przycisk. Chciałbym korzystać z możliwości WYSIWIG Qt Designer zamiast tworzyć cały formularz w kodzie.

questionAnswers(2)

yourAnswerToTheQuestion