UpLowLimp/ZBD_IIIDL_S_Project/Src/PopDialog/verticaltohorizondialog.cpp
2024-11-25 17:15:44 +08:00

102 lines
2.5 KiB
C++

#include "verticaltohorizondialog.h"
#include "ui_verticaltohorizondialog.h"
#include <QPainter>
#include "dataformate.h"
#include "languagemanager.h"
VerticalToHorizonDialog::VerticalToHorizonDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::VerticalToHorizonDialog)
{
ui->setupUi(this);
this->setWindowFlags(Qt::FramelessWindowHint); //设置无边框
setAttribute(Qt::WA_TranslucentBackground,true);
}
VerticalToHorizonDialog::~VerticalToHorizonDialog()
{
delete ui;
}
bool VerticalToHorizonDialog::getConfirmState()
{
return isConfirmed;
}
void VerticalToHorizonDialog::on_cancel_Btn_clicked()
{
isConfirmed = false;
this->close();
}
void VerticalToHorizonDialog::on_confirm_Btn_clicked()
{
isConfirmed = true;
this->close();
}
void VerticalToHorizonDialog::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event)
QPainter painter(this);
painter.fillRect(rect(),QColor(0,0,0,100));
}
void VerticalToHorizonDialog::changeEvent(QEvent* event)
{
switch (event->type())
{
case QEvent::LanguageChange:
{
E_LANGUAGE language = LanguageManager::getInstance()->getCurrentLanguage();
switch(language)
{
case Chinese_E:
ui->leftText_label->setVisible(true);
ui->middleText_label->setVisible(true);
ui->rightText_label->setVisible(true);
ui->English1_label->setVisible(false);
ui->english2_label->setVisible(false);
ui->tip_label->setText("Tips");
ui->confirm_Btn->setText("Confirm");
ui->cancel_Btn->setText("Cancel");
break;
case English_E:
ui->leftText_label->setVisible(false);
ui->middleText_label->setVisible(false);
ui->rightText_label->setVisible(false);
ui->English1_label->setVisible(true);
ui->English1_label->move(80,420);
ui->english2_label->setVisible(true);
ui->english2_label->move(120,460);
ui->tip_label->setText("提示");
ui->confirm_Btn->setText("确认");
ui->cancel_Btn->setText("取消");
break;
}
ui->retranslateUi(this);
}
break;
default:
QWidget::changeEvent(event);
break;
}
//避免刚开始中文时,有英文
E_LANGUAGE language = LanguageManager::getInstance()->getCurrentLanguage();
if(language == Chinese_E)
{
ui->English1_label->setVisible(false);
ui->english2_label->setVisible(false);
}
}