QT5控件-QPushButton和QFocusFrame(按钮和焦点框)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT5控件-QPushButton和QFocusFrame(按钮和焦点框)相关的知识,希望对你有一定的参考价值。

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QPushButton>
#include <QFocusFrame>

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();

    QPushButton* btn[10];
    QFocusFrame* btn_frame ;
public slots:
    void btn_clicked();
};

#endif // MAINWINDOW_H
#include "mainwindow.h"
#include <QtDebug>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    this->resize(400,300);
    this->centralWidget();

    int ypos = 30 ;

    for(int i=0;i<3;i++)
    {
        btn[i] = new QPushButton(QString("第%1个按钮").arg(i),this);
        btn[i]->setGeometry(10,ypos,300,40);

        ypos += 50 ;
    }

    for(int i=0;i<3;i++)
    {
        connect(btn[i],SIGNAL(clicked(bool)),SLOT(btn_clicked()));
    }

    btn_frame = new QFocusFrame(this);
    btn_frame->setWidget(btn[0]);
    btn_frame->setAutoFillBackground(true);
}

MainWindow::~MainWindow()
{

}

void MainWindow::btn_clicked()
{
    qDebug()<<"触发clicked事件";
}
#include "mainwindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

技术分享

 

QFocusFrame也可以将其他控件包含在里面

以上是关于QT5控件-QPushButton和QFocusFrame(按钮和焦点框)的主要内容,如果未能解决你的问题,请参考以下文章

qt中怎样把一个控件即加入Qicon变量,又加入文字?如下图

qt5-QPushButton按钮

QT5中怎样connect QPushButton和QLabel

QT5下的QPushButton错误,同时在macos上推送到全屏

五QPushButton按钮和QLineEdit控件操作

如何在 QT5.6.1 中创建自定义按钮