默认是黄色
开启对应的序号,对应的label显示红色,选0为全部开启
开启的l即红色的label才能选中,选中后变为白色
代码如下,逻辑待优化:
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QMap>
namespace Ui {
class Widget;
}
enum ButtonType
{
EN_NONE,
EN_NUMBER0 = 0,
EN_NUMBER1,
EN_NUMBER2,
EN_NUMBER3,
EN_NUMBER4,
EN_OPEN,
EN_CLOSE,
EN_STATE,
EN_SELECT,
EN_ENTER
};
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
void connectInit();
void onHandleButton(ButtonType s, ButtonType r);
void onButtonPressed();
void setMissilePower();
void setMissileSelect();
signals:
void sendButton(ButtonType s, ButtonType r);
private:
Ui::Widget *ui;
ButtonType dest;
QMap<int, int> m_tmpMap; //临时容器
QMap<int, int> m_missileMap; //确认的容器 0:初始 1:开 2:关
QMap<int, int> m_selectMap; //选择容器 0:初始 1:选中 2:未选中
bool m_state;
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
ui->labelState->hide();
dest = EN_NONE;
m_missileMap[1] = 0;