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() { }