UpLowLimp/ZBD_IIIDL_S_Project/Src/PopDialog/horizontaltoverticaldialog.cpp

98 lines
2.6 KiB
C++
Raw Normal View History

2024-11-25 17:15:44 +08:00
#include "horizontaltoverticaldialog.h"
#include "ui_horizontaltoverticaldialog.h"
#include <QPainter>
#include "dataformate.h"
#include "languagemanager.h"
HorizontalToVerticalDialog::HorizontalToVerticalDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::HorizontalToVerticalDialog)
{
ui->setupUi(this);
this->setWindowFlags(Qt::FramelessWindowHint); //设置无边框
setAttribute(Qt::WA_TranslucentBackground,true);
}
HorizontalToVerticalDialog::~HorizontalToVerticalDialog()
{
delete ui;
}
bool HorizontalToVerticalDialog::getConfirmState()
{
return isConfirmed;
}
void HorizontalToVerticalDialog::on_cancel_Btn_clicked()
{
isConfirmed = false;
this->close();
}
void HorizontalToVerticalDialog::on_confirm_Btn_clicked()
{
isConfirmed = true;
this->close();
}
void HorizontalToVerticalDialog::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event)
QPainter painter(this);
painter.fillRect(rect(),QColor(0,0,0,100));
}
void HorizontalToVerticalDialog::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("提示");
ui->confirm_Btn->setText("确认");
ui->cancel_Btn->setText("取消");
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("Tips");
ui->confirm_Btn->setText("Confirm");
ui->cancel_Btn->setText("Cancel");
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);
}
}