zty199 4a81898cd3 fix: 修复 UOS 上加载 RC 页面始终处于加载中的问题
页面加载始终未触发 loadFinished 信号,判断加载未完成

Log: 添加 loadProgressChanged 信号处理,加载进度到 100% 就显示页面;loadFinished 信号如果报错,在窗口中提示“加载存在错误”
2022-11-21 14:38:57 +08:00

52 lines
963 B
C++

#ifndef WIDGET_H
#define WIDGET_H
#include <DSpinner>
#include <DGuiApplicationHelper>
#include <QWidget>
#include <QWebEnginePage>
#include <QStackedLayout>
DWIDGET_USE_NAMESPACE
DGUI_USE_NAMESPACE
class WebEngineView;
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QString szUrl = nullptr, QWidget *parent = nullptr);
~Widget();
QWebEnginePage *getPage();
void goBack();
void goForward();
void refresh();
private:
void initUI();
void initConnections();
void updateLayout();
signals:
void sigLoadErrorOccurred();
private slots:
void slotLoadStarted();
void slotLoadProgress(int value);
void slotLoadFinished(int status);
void slotPaletteTypeChanged(DGuiApplicationHelper::ColorType paletteType);
private:
WebEngineView *m_webEngineView = nullptr;
DSpinner *m_spinner = nullptr;
QStackedLayout *mainLayout = nullptr;
QString m_szUrl;
};
#endif // WIDGET_H