所以基本上我想要做到以下几点:当按下按钮时,在X点创建一个大小为Y的按钮,该按钮具有从textEdit中提取的文本。这是我所做的功能:
void MainWindow::on_pushButton_released()
{
QString a = ui->textEdit->toPlainText();
QPushButton* ptr = new QPushButton(a);
addWidget(ptr); // I figured I should use this function, thing is I don't know what should call it
ptr->show();
ptr->setGeometry(260, 140, 40, 40);
}
它可以工作,但窗口出现在我桌面上的260,140上。我希望它在主窗口中是260,140,无论它在哪里。提前谢谢。
答案 0 :(得分:1)
你应该向父母QPushButton
提供谎言。使用以下QPushButtons构造函数:
QPushButton ( const QString & text, QWidget * parent = 0 );
代码将如下所示:
void MainWindow::on_pushButton_released()
{
QString a = ui->textEdit->toPlainText();
QPushButton* ptr = new QPushButton( a, this /* <------------ */ );
ptr->show();
ptr->setGeometry(260, 140, 40, 40);
}