Qt的按钮基类共有成员的学习

#include "widget.h"
#include<QPushButton>
#include<QAbstractButton>
#include<QDebug>
#include<QMenu>
#define cout qDebug()
Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    resize(640,480);
    creatPushButton();
}

Widget::~Widget()
{

}

void Widget::creatPushButton()
{
    QPushButton*btn=new QPushButton("按钮",this);
    btn->setIcon(QIcon("://images/loginIcon.png"));
    btn->resize(80,80);
    connect(btn,&QAbstractButton::clicked,this,[](bool checked){
        cout<<"clicked"<<checked;
    });
    connect(btn,&QAbstractButton::pressed,this,[](){
        cout<<"pressed";
    });
    connect(btn,&QAbstractButton::released,this,[](){
        cout<<"released";
    });
    ///切换
    connect(btn,&QAbstractButton::toggled,this,[](bool checked){
        cout<<"toggled"<<checked;
    });

    //设置按钮可以选中
    btn->setCheckable(true);
    //void setChecked(bool) 设置是否选中按钮(checkable必须被启用)
    btn->setChecked(true);
    auto textbtn=new QPushButton("test",this);
    textbtn->move(100,0);
    connect(textbtn,&QPushButton::clicked,btn,[=](){
        //循环点击
//        btn->animateClick(1000);
//        textbtn->animateClick(1000);
        //自动点击按钮
        btn->click();
        //textbtn->click();
        //点击test按钮后即可将图标放大
        btn->setIconSize(QSize(60,60));
    });
    //设置enter即可点击图标
    //设置为默认按钮,如果设置多个,则以最后一个为准
    btn->setDefault(true);
    btn->setFlat(true);
    
    
}

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
    void creatPushButton();
};
#endif // WIDGET_H

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值