1 Star 0 Fork 0

qinxude/rk3568ui

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
screenswitchbutton.cpp 3.13 KB
一键复制 编辑 原始数据 按行查看 历史
qinxude 提交于 2024-09-03 09:38 . 3568ui base
#include "screenswitchbutton.h"
#include "ui_screenswitchbutton.h"
#include <QDebug>
static ScreenSwitchButton *m_ScreenSwitchButton = nullptr;
ScreenSwitchButton::ScreenSwitchButton(QWidget *parent) :
QWidget(parent),
ui(new Ui::ScreenSwitchButton)
{
ui->setupUi(this);
for(int i = 0;i < BUTTON_MAX_NUM;i++)
{
m_Widget[i] = nullptr;
}
m_Button[0] = ui->b1;
m_Button[1] = ui->b2;
m_Button[2] = ui->b3;
m_Button[3] = ui->b4;
m_Button[4] = ui->b5;
m_Button[5] = ui->b6;
m_Button[6] = ui->b7;
m_Button[7] = ui->b8;
for(int i = 0;i < BUTTON_MAX_NUM;i++)
{
if(m_Button[i] != nullptr)
m_Button[i]->setEnabled(true);
}
}
ScreenSwitchButton::~ScreenSwitchButton()
{
delete ui;
}
ScreenSwitchButton *ScreenSwitchButton::GetInstance()
{
if(m_ScreenSwitchButton == nullptr){
m_ScreenSwitchButton = new ScreenSwitchButton;
}
return m_ScreenSwitchButton;
}
void ScreenSwitchButton::Show(QWidget *parent)
{
this->setParent(parent);
for(int i = 0;i < BUTTON_MAX_NUM-1;i++)
{
if(i == 5 || i == 6 || i == 7)
continue;
if(m_Widget[i] == parent)
{
m_Button[i]->setStyleSheet("background-color: rgb(251, 160, 57);\
font: 30px 'Ubuntu';\
font:bold;\
color: rgb(255, 255, 255);\
border:1px solid;\
border-right-color: rgb(95,95,95);\
border-left-color: rgb(95,95,95);");
}else{
if(m_Button[i] == nullptr)
continue;
m_Button[i]->setStyleSheet("background-color: rgb(67, 67, 67);\
font: 30px 'Ubuntu';\
font:bold;\
color: rgb(255, 255, 255);\
border:1px solid;\
border-right-color: rgb(95,95,95);\
border-left-color: rgb(95,95,95);");
}
}
this->move(0,0);
if(isHidden())
this->show();
}
void ScreenSwitchButton::SetButtonWidget(u_int32_t index,QWidget *Addr)
{
if(index < BUTTON_MAX_NUM)
{
m_Widget[index] = Addr;
}
}
void ScreenSwitchButton::on_b1_clicked()
{
emit ButtonClicked(m_Widget[0]);
}
void ScreenSwitchButton::on_b2_clicked()
{
emit ButtonClicked(m_Widget[1]);
}
void ScreenSwitchButton::on_b3_clicked()
{
emit ButtonClicked(m_Widget[2]);
}
void ScreenSwitchButton::on_b4_clicked()
{
emit ButtonClicked(m_Widget[3]);
}
void ScreenSwitchButton::on_b5_clicked()
{
emit ButtonClicked(m_Widget[4]);
}
void ScreenSwitchButton::on_b6_clicked()
{
emit ButtonClicked(m_Widget[5]);
}
void ScreenSwitchButton::on_b7_clicked()
{
emit ButtonClicked(m_Widget[6]);
}
void ScreenSwitchButton::on_b8_clicked()
{
emit ButtonClicked(m_Widget[7]);
}
//void ScreenSwitchButton::on_b9_clicked()
//{
// emit ButtonClicked(m_Widget[8]);
//}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/qinxude/rk3568ui.git
[email protected]:qinxude/rk3568ui.git
qinxude
rk3568ui
rk3568ui
master

搜索帮助