您已经在代码中设置了 QPushButton 的圆角和背景色样式表,但是您可能没有看到预期的效果是因为在 CloseMainWindow
类的构造函数中,您创建了一个新的 QVBoxLayout,并将 ui->verticalLayout 添加到该布局中。然后,您将该布局设置为窗口的布局。
这会导致原本应用于 ui->pushButton 的样式表无法生效,因为它不再直接位于窗口上。
解决方法是不需要创建新的 QVBoxLayout,直接使用 ui->verticalLayout 作为窗口的布局即可。
请修改构造函数代码如下:
CloseMainWindow::CloseMainWindow(QWidget *parent) :
QDialog (parent),
ui(new Ui::CloseMainWindow)
{
ui->setupUi(this);
setWindowFlags(Qt::CustomizeWindowHint | Qt::FramelessWindowHint);
ui->pushButton->setStyleSheet("QPushButton {"
" border-radius: 10px;" // 圆角的像素值
" background-color: rgb(255, 0, 0);" // 背景颜色
"}"
"QPushButton:hover {"
" background-color: rgb(0, 255, 0);" // 鼠标悬停时的颜色
"}"
);
}
这样,应该可以正确设置 ui->pushButton 的圆角和背景色了。
内容由零声教学AI助手提供,问题来源于学员提问