Привет
У меня есть проблема в коде, что следующий код переустанавливает ошибку,
нет соответствующей функции для вызова QpushButton :: QPushButton (QString * &, QWidget * &)
и
нет соответствующей функции для вызова QPainter :: drawText (const QPointF &, const QString &)
и код
MainWindow::MainWindow(QWidget *parent) :
QPushButton(parent)
{
//ui->setupUi(this);
//connect(this,SIGNAL(clicked()),this,SLOT(newWindow()));
}
MainWindow::MainWindow(QString *str,QWidget *parent) :
QPushButton(str,parent)
{
//ui->setupUi(this);
text_str=str;
connect(this,SIGNAL(clicked()),this,SLOT(newWindow()));
}
MainWindow::~MainWindow()
{
//delete ui;
}
void MainWindow::paintEvent(QPaintEvent* event)
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing);
QPen pen(Qt::black);
pen.setWidth(6);
painter.setPen(pen);
static const QPointF points[6] = {
QPointF(300.0, 160.0),//Top Line
QPointF(220.0, 160.0),//
//QPointF(300.0, 180.0),
QPointF(195.0, 210.0),
QPointF(220.0, 260.0),//
QPointF(300.0, 260.0),//Bottom Line
QPointF(325.0, 210.0)
};
painter.drawPolygon(points, 6);
QPainter painter1(this);
QPen pen1(Qt::green);
painter1.setPen(pen1);
QLinearGradient grad1(300, 160, 325, 260);
QBrush brush1(grad1);
grad1.setColorAt(1.0, Qt::white);
painter1.setBrush(brush1);
QFont font("Times", 12);
painter1.setFont(font);
QPoint point1 = QPoint( 240, 225);
painter1.drawText( point1, text_str );
}
void MainWindow::newWindow()
{
FrameWindow *frm=new FrameWindow(this);
frm->show();
}
и класс mainnWindow вызывается с помощью следующего кода
NewWindow :: NewWindow (QWidget * parent):
QMainWindow (родитель),
пользовательский интерфейс (новый пользовательский интерфейс :: NewWindow)
{
ui-> setupUi (это);
w1 = новое MainWindow («Привет», это);
w1-> показать ();
w6-> показать ();
}
NewWindow :: ~ NewWindow ()
{
удалить пользовательский интерфейс;
}
Пожалуйста, помогите мне.
Заранее спасибо за вашу помощь.