QString设置参数QPushButton&QFocusFrame

本文介绍了如何在Qt中使用QFocusFrame为QPushButton绘制外层线,并展示了按钮事件的处理流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

}

901c3d39f3402ef039e96e2817c29d1a814.jpg

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值