一、Push Button
1、属性列表

2、代码示例
创建一个按钮设置一个坦克图标占满按钮
cpp
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//创建图标
QIcon icon(":/Tank.png");
//设置图标
ui->Tank->setIcon(icon);
//调节图标大小
ui->Tank->setIconSize(QSize(50,50));
//设置按钮大小
ui->Tank->setFixedSize(QSize(50,50));
}
运行结果:

3、简单运用
创建4个按键控制坦克上下左右移动
cpp
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//创建图标
QIcon icon(":/Tank.png");
//设置图标
ui->Tank->setIcon(icon);
//调节图标大小
ui->Tank->setIconSize(QSize(50,50));
//设置按钮大小
ui->Tank->setFixedSize(QSize(50,50));
//设置按钮图标
ui->pushButton_up->setIcon(QIcon(":/up.png"));
ui->pushButton_down->setIcon(QIcon(":/down.png"));
ui->pushButton_left->setIcon(QIcon(":/left.png"));
ui->pushButton_right->setIcon(QIcon(":/right.png"));
//设置图标大小
ui->pushButton_up->setIconSize(QSize(20,20));
ui->pushButton_down->setIconSize(QSize(20,20));
ui->pushButton_left->setIconSize(QSize(20,20));
ui->pushButton_right->setIconSize(QSize(20,20));
//设置快捷键
ui->pushButton_up->setShortcut(QKeySequence("w"));
ui->pushButton_down->setShortcut(QKeySequence("s"));
ui->pushButton_left->setShortcut(QKeySequence("a"));
ui->pushButton_right->setShortcut(QKeySequence("d"));
}
cpp
void Widget::on_pushButton_up_clicked()
{
QRect rect=ui->Tank->geometry();
ui->Tank->setGeometry(rect.x(),rect.y()-5,rect.width(),rect.height());
qDebug()<<"up";
}
void Widget::on_pushButton_left_clicked()
{
QRect rect=ui->Tank->geometry();
ui->Tank->setGeometry(rect.x()-5,rect.y(),rect.width(),rect.height());
qDebug()<<"left";
}
void Widget::on_pushButton_right_clicked()
{
QRect rect=ui->Tank->geometry();
ui->Tank->setGeometry(rect.x()+5,rect.y(),rect.width(),rect.height());
qDebug()<<"right";
}
void Widget::on_pushButton_down_clicked()
{
QRect rect=ui->Tank->geometry();
ui->Tank->setGeometry(rect.x(),rect.y()+5,rect.width(),rect.height());
qDebug()<<"down";
}

二、Radio Buttion
1、属性列表

2、代码示例
cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//禁用其他选项
//触发点击事件但是没有反应
// ui->radioButton_others->setCheckable(false);
//更加彻底的禁用,不会触发点击事件
ui->radioButton_others->setEnabled(false);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_radioButton_male_clicked()
{
ui->label->setText("您的性别:男");
}
void Widget::on_radioButton_female_clicked()
{
ui->label->setText("您的性别:女");
}
void Widget::on_radioButton_others_clicked()
{
ui->label->setText("您的性别:其他");
}

三、Check Box
1、属性列表

2、代码示例
cpp
#include "widget.h"
#include "ui_widget.h"
#include "QString"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_pushButton_clicked()
{
QString result;
if(ui->checkBox_1->isChecked())
result+=" 鸡腿堡 ";
if(ui->checkBox_2->isChecked())
result+=" 牛肉堡 ";
if(ui->checkBox_3->isChecked())
result+=" 鸡肉卷 ";
result+=".";
ui->label_2->setText(result);
}
