#include "musclebutton.h" #include "ui_musclebutton.h" #include #include #include #include #include MuscleButton::MuscleButton(QWidget *parent) : QWidget(parent), ui(new Ui::MuscleButton), isConnected(false) { ui->setupUi(this); // QGraphicsDropShadowEffect * shadowEffect = new QGraphicsDropShadowEffect(); // shadowEffect->setYOffset(2); // shadowEffect->setBlurRadius(12); // shadowEffect->setColor(QColor(0,0,0,51)); // this->setGraphicsEffect(shadowEffect); st_muscleParam.muscleId = 0; } MuscleButton::~MuscleButton() { delete ui; } void MuscleButton::paintEvent(QPaintEvent *event) { Q_UNUSED(event) } void MuscleButton::mousePressEvent(QMouseEvent *event) { Q_UNUSED(event) emit muscleButtonClicked(m_id); } void MuscleButton::setMuscleParamButton(const ST_MuscleParam& param) { //左右肌肉图标 QString limpFlag; if(param.muscleId > 30) { limpFlag= ""; } else if(param.muscleId <= 15) limpFlag = ":/DependFile/Source/channel/left.png"; else limpFlag = ":/DependFile/Source/channel/right.png"; QPixmap pixmap; pixmap.load(limpFlag); ui->Image_Label->setPixmap(pixmap); ui->muscle_Label->setText(param.muscleName ); ui->current_Label->setText(QString::number(param.minCurrent)+"~"+QString::number(param.maxCurrent) + "mA"); ui->plus_Label->setText(QString::number(param.plus) + "us"); ui->frequency_Label->setText(QString::number(param.frequency) + "Hz"); st_muscleParam = param; } void MuscleButton::setBLEBattery(uint8_t battery) { QPixmap pixmap; QString img; //qDebug() <<"电量:"<BLEBattery_Label->setPixmap(pixmap); } void MuscleButton::initWidget(QString title,int id) { ui->channel_Label->setText(title); m_id = id; } void MuscleButton::setMuscleEnabled(bool enabled) { isConnected = enabled; QString enabledStyle = "#groupBox{background: #E4F4FC;" "border-radius: 6px;}"; QString disenabledStyle = "#groupBox{background: #EFEFEF;border-radius: 6px;}"; if(enabled) ui->groupBox->setStyleSheet(enabledStyle); else ui->groupBox->setStyleSheet(disenabledStyle); } ST_MuscleParam MuscleButton::getMuscleParam() { ST_MuscleParam st_tmpMuscleParam; st_tmpMuscleParam.frequency = ui->frequency_Label->text().remove("Hz").toInt(); st_tmpMuscleParam.plus = ui->plus_Label->text().remove("us").toInt(); QStringList currentList= ui->current_Label->text().remove("mA").split("~"); st_tmpMuscleParam.connectState = isConnected; if(currentList.count() >1) { st_tmpMuscleParam.minCurrent = currentList.first().toInt(); st_tmpMuscleParam.maxCurrent = currentList.last().toInt(); } st_tmpMuscleParam.muscleName = ui->muscle_Label->text(); st_tmpMuscleParam.muscleId = st_muscleParam.muscleId; return st_tmpMuscleParam; } void MuscleButton::setConnectState(bool state) { QPixmap pixmap; QString img; if(state) img = ":/DependFile/Source/channel/connected.png"; else img = ":/DependFile/Source/channel/disconnected.png"; pixmap.load(img); ui->connectState_Label->setPixmap(pixmap); } void MuscleButton::setCheckedFesType(E_FES_PAGE E_fesType) { if(E_fesType == ONLY_FES_E) { ui->muscle_Label->setVisible(false); ui->Image_Label->setVisible(false); } else if(E_fesType == BICYCLE_FES_E) { ui->muscle_Label->setVisible(true); ui->Image_Label->setVisible(true); } } void MuscleButton::changeEvent(QEvent* event) { switch (event->type()) { case QEvent::LanguageChange: ui->retranslateUi(this); break; default: QWidget::changeEvent(event); break; } }