QString("Frame's button %1").arg(i)
#include "widget.h"
#include <QtWidgets/QPushButton>
#include <QtWidgets/QFocusFrame>
/*
QFocusFrame可以控制其他控件外的Paintable区域。例如在控件外使用
外层线。使用QFocusFrame在QPushButton控件外绘制外层线
*/
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
QPushButton *btn = new QPushButton(QString("Frame's button"), this);
btn->setGeometry(10, 30, 300, 40);
QFocusFrame *btn_frame = new QFocusFrame(this);
btn_frame->setWidget(btn);
// btn_frame->setAutoFillBackground(true);
connect(btn, SIGNAL(clicked()), this, SLOT(btn_click()));
connect(btn, SIGNAL(pressed()), this, SLOT(btn_pressed()));
connect(btn, SIGNAL(released()), this, SLOT(btn_released()));
}
/*
Button Pressed
Button Relased
Button Click
单击按钮式,最先执行Pressed事件;释放按钮Relased事件
Click事件处理Pressed&Relased事件并发送信号
*/
void Widget::btn_click()
{
qDebug("Button Click");
}
void Widget::btn_pressed()
{
qDebug("Button Pressed");
}
void Widget::btn_released()
{
qDebug("Button Relased");
}
Widget::~Widget()
{
}

转载于:https://my.oschina.net/u/3919756/blog/2052402