#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也可以將其他控件包含在裡面