qt怎么自定义按钮形状

avatar
作者
筋斗云
阅读量:0

要自定义按钮形状,可以通过继承QPushButton类并重新实现其paintEvent方法来实现。以下是一个示例代码:

#include   class CustomButton : public QPushButton { public:     CustomButton(QWidget *parent = nullptr) : QPushButton(parent) {}  protected:     void paintEvent(QPaintEvent *event) override     {         QPainter painter(this);         painter.setRenderHint(QPainter::Antialiasing, true);          // 绘制圆形按钮         painter.setBrush(QColor(255, 0, 0));         painter.drawEllipse(rect().adjusted(2, 2, -2, -2));          // 如果要绘制其他形状的按钮,可以根据需要修改绘制的代码     } };  int main(int argc, char *argv[]) {     QApplication app(argc, argv);      QWidget window;     QVBoxLayout layout(&window);      CustomButton customButton;     customButton.setText("Custom Button");     layout.addWidget(&customButton);      window.show();      return app.exec(); } 

在上面的代码中,我们定义了一个CustomButton类,继承自QPushButton,并重新实现了其paintEvent方法,用来绘制圆形按钮。您可以根据需要修改绘制的代码,来实现不同形状的按钮。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!