zoukankan      html  css  js  c++  java
  • 可选取颜色的按钮封装

    头文件:

    #pragma once
    
    #include <QObject>
    #include <QPushButton>
    #include <QColorDialog>
    #include <QColor>
    #include <QDebug>
    class MyQPushButton : public QPushButton
    {
        Q_OBJECT
    public:
        MyQPushButton(QWidget *parent);
        ~MyQPushButton();
        void setColor();//设置随机颜色
        void setColor(QColor color);//设置特定颜色
        QColor getColor() const;//获取颜色
    private slots:
        void choiceColor(void);
    };

    源文件:

    #include "MyQPushButton.h"
    
    MyQPushButton::MyQPushButton(QWidget *parent)
    : QPushButton(parent)
    {
        connect(this, SIGNAL(clicked()), this, SLOT(choiceColor(void)));
        setAutoFillBackground(true);
        setFlat(true);
    
    }
    
    MyQPushButton::~MyQPushButton()
    {
    
    }
    
    void MyQPushButton::choiceColor(void)
    {
        QColor color = QColorDialog::getColor(Qt::white, this);
        if (!color.isValid())
        {
            return;
        }
        QPalette pal;
        pal.setColor(QPalette::Button, color);
    }
    
    /*****************************************************************/
    //作者:朱小勇
    //函数名称:设置随机颜色
    //函数参数:NULL
    //函数返回值:NULL
    //函数作用:NULL
    //备注:NULL
    /*****************************************************************/
    void MyQPushButton::setColor()
    {
        QColor color(rand() % 256, rand() % 256, rand() % 256);//way2
        QPalette pal;
        pal.setColor(QPalette::Button, color);
        setPalette(pal);
    }
    
    /*****************************************************************/
    //作者:朱小勇
    //函数名称:设置指定颜色
    //函数参数:NULL
    //函数返回值:NULL
    //函数作用:NULL
    //备注:NULL
    /*****************************************************************/
    void MyQPushButton::setColor(QColor color)
    {
        QPalette pal;
        pal.setColor(QPalette::Button, color);
        setPalette(pal);
    }
    
    /*****************************************************************/
    //作者:朱小勇
    //函数名称:获取颜色
    //函数参数:NULL
    //函数返回值:NULL
    //函数作用:NULL
    //备注:NULL
    /*****************************************************************/
    QColor MyQPushButton::getColor() const
    {
        return this->palette().color(QPalette::Button);
    }

  • 相关阅读:
    JavaScript 基本类型值-Undefined、Null、Boolean
    Git学习之路(6)- 分支操作
    Git学习之路(5)- 同步到远程仓库及多人协作问题
    setTimeout小总结
    Git学习之路(4)- 撤销操作、删除文件和恢复文件
    Git学习之路(3)-提交文件到三个区
    Git学习之路(2)-安装GIt和创建版本库
    Git学习之路(1)-Git简介
    两种常见挂载Jenkins slave节点的方法
    rabbitmq集群节点操作
  • 原文地址:https://www.cnblogs.com/judes/p/9592637.html
Copyright © 2011-2022 走看看