Alterar o botão Qt retangular para arredondar

Estou tentando criar um botão redondo no Qt. Um formulário simples com um único botãoQPushButton foi criado em designer. Eu estou tentando transformar isso em um botão redondo usandosetMask(). Assim quesetMask() é aplicado o botão desaparece. Um widget personalizado precisa ser criado para criar um botão redondo?

#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();

}

Nota: Se o botão for criado no código e aplicado a uma janela antes que a janela seja exibida, o botão será exibido. Eu gostaria de usar os recursos WYSIWIG do Qt Designer ao invés de criar o formulário inteiro no código.

questionAnswers(2)

yourAnswerToTheQuestion