#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