feat:添加事件主窗口及其相关文件
This commit is contained in:
parent
956483cc94
commit
cb52a6bd29
|
|
@ -2,8 +2,73 @@
|
|||
#define ALARMEVENTDATAVIEW_H
|
||||
|
||||
#include <QWidget>
|
||||
#include <QTableView>
|
||||
#include <QAbstractTableModel>
|
||||
#include <QStyledItemDelegate>
|
||||
|
||||
class AlarmEventDataModel : public QAbstractTableModel
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
struct RowData
|
||||
{
|
||||
QVector<QVariant> values;
|
||||
};
|
||||
|
||||
struct PaginationInfo
|
||||
{
|
||||
int totalEntries;
|
||||
int entriesPerpage;
|
||||
int totalPages;
|
||||
int currentPage;
|
||||
};
|
||||
|
||||
struct SectionData
|
||||
{
|
||||
int width = -1;
|
||||
QString text;
|
||||
|
||||
SectionData(QString t, int w)
|
||||
:text(t),
|
||||
width(w){}
|
||||
};
|
||||
|
||||
explicit AlarmEventDataModel(QObject* parent = nullptr);
|
||||
~AlarmEventDataModel();
|
||||
|
||||
QModelIndex index(int row, int column, const QModelIndex& parent) const override;
|
||||
QVariant data(const QModelIndex& index, int role) const override;
|
||||
QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
|
||||
//bool setData(const QModelIndex& index, const QVariant &value, int role = Qt::EditRole) override;
|
||||
int rowCount(const QModelIndex& parent = QModelIndex()) const override;
|
||||
int columnCount(const QModelIndex& parent = QModelIndex()) const override;
|
||||
Qt::ItemFlags flags(const QModelIndex& index) const override;
|
||||
|
||||
private:
|
||||
void iniHeaderData();
|
||||
void updateCurPageData(); //更新当前页的数据
|
||||
void updateTotalCount(); //更新总记录数
|
||||
|
||||
QVector<RowData> m_curPageData;
|
||||
QVector<SectionData> m_headerData;
|
||||
PaginationInfo m_paginationInfo;
|
||||
};
|
||||
|
||||
class AlarmEventDataDelegate : public QStyledItemDelegate
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit AlarmEventDataDelegate(QTableView* view, QObject* parent = nullptr);
|
||||
~AlarmEventDataDelegate();
|
||||
|
||||
void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
|
||||
|
||||
private:
|
||||
QTableView* m_tableView;
|
||||
};
|
||||
|
||||
class QTableView;
|
||||
class QVBoxLayout;
|
||||
class AlarmEventDataView : public QWidget
|
||||
{
|
||||
|
|
@ -15,6 +80,8 @@ public:
|
|||
|
||||
private:
|
||||
QTableView* m_tableView;
|
||||
AlarmEventDataModel* m_tableModel;
|
||||
AlarmEventDataDelegate* m_delegate;
|
||||
QVBoxLayout* m_vLayout;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
#include <QString>
|
||||
#include <QDateTime>
|
||||
|
||||
enum MainDialogType
|
||||
enum MainDialogMode
|
||||
{
|
||||
RealTime = 0,
|
||||
Historical
|
||||
|
|
|
|||
|
|
@ -15,9 +15,11 @@ class AlarmEventMainDialog : public QDialog
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
AlarmEventMainDialog(MainDialogType type, QWidget *parent = nullptr);
|
||||
AlarmEventMainDialog(QWidget *parent = nullptr);
|
||||
~AlarmEventMainDialog();
|
||||
|
||||
void setMode(MainDialogMode mode);
|
||||
|
||||
signals:
|
||||
void sgl_hide();
|
||||
|
||||
|
|
@ -26,6 +28,8 @@ public slots:
|
|||
|
||||
private:
|
||||
Ui::alarmEventMainDialog* ui;
|
||||
MainDialogMode m_mode;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ class DateTimeWidget;
|
|||
class TimeLineWidget;
|
||||
class DataPanel;
|
||||
class dpConfigurationDialog;
|
||||
class AlarmEventMainDialog;
|
||||
|
||||
namespace dashboardFrame {
|
||||
enum frameType
|
||||
|
|
@ -74,6 +75,8 @@ public slots:
|
|||
void onBtnClicked_addDataPanel();
|
||||
void onBtnClicked_dashboardList();
|
||||
void onBtnClicked_dashboardTab();
|
||||
void onBtnClicked_showRealtimeEvents();
|
||||
void onBtnClicked_showHistoricalEvents();
|
||||
|
||||
void onMenuAction_dashboardList();
|
||||
|
||||
|
|
@ -110,6 +113,7 @@ private:
|
|||
TimeLineWidget* m_pTimeLineWidget;
|
||||
|
||||
dpConfigurationDialog* m_pPanelConfigurationDialog;
|
||||
AlarmEventMainDialog* m_pAlarmEventMainDialog;
|
||||
|
||||
QTimer* m_pTimer_RealTime;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,8 +1,138 @@
|
|||
#include "alarmEventDataView.h"
|
||||
#include <QTableView>
|
||||
#include <QHeaderView>
|
||||
#include <QVBoxLayout>
|
||||
#include <QPainter>
|
||||
|
||||
///////------AlarmEventDataModel-----
|
||||
AlarmEventDataModel::AlarmEventDataModel(QObject* parent)
|
||||
: QAbstractTableModel(parent)
|
||||
{
|
||||
iniHeaderData();
|
||||
}
|
||||
|
||||
AlarmEventDataModel::~AlarmEventDataModel()
|
||||
{}
|
||||
|
||||
QModelIndex AlarmEventDataModel::index(int row, int column, const QModelIndex& parent) const
|
||||
{
|
||||
if(!hasIndex(row, column, parent))
|
||||
return QModelIndex();
|
||||
|
||||
if(column > m_headerData.count())
|
||||
return QModelIndex();
|
||||
|
||||
return createIndex(row, column);
|
||||
}
|
||||
|
||||
QVariant AlarmEventDataModel::data(const QModelIndex& index, int role) const
|
||||
{
|
||||
if(index.isValid())
|
||||
return QVariant();
|
||||
|
||||
int row = index.row();
|
||||
int col = index.column();
|
||||
int globalRow = (m_paginationInfo.currentPage - 1) * m_paginationInfo.entriesPerpage + row;
|
||||
|
||||
switch (role)
|
||||
{
|
||||
case Qt::DisplayRole:
|
||||
{
|
||||
if(index.column() == 0) //第一列显示序号
|
||||
return QString::number(globalRow + 1);
|
||||
else
|
||||
{
|
||||
int dataCol = col - 1;
|
||||
const RowData& rowData = m_curPageData[row];
|
||||
return rowData.values.value(dataCol);
|
||||
}
|
||||
}
|
||||
case Qt::TextAlignmentRole:
|
||||
return Qt::AlignCenter; //居中展示
|
||||
default:
|
||||
return QVariant();
|
||||
}
|
||||
}
|
||||
|
||||
QVariant AlarmEventDataModel::headerData(int section, Qt::Orientation orientation, int role) const
|
||||
{
|
||||
if(orientation == Qt::Horizontal && role == Qt::DisplayRole)
|
||||
return m_headerData.at(section).text;
|
||||
|
||||
return QAbstractItemModel::headerData(section, orientation, role);
|
||||
}
|
||||
|
||||
int AlarmEventDataModel::rowCount(const QModelIndex& parent) const
|
||||
{
|
||||
return m_curPageData.count();
|
||||
}
|
||||
|
||||
int AlarmEventDataModel::columnCount(const QModelIndex& parent) const
|
||||
{
|
||||
return m_headerData.isEmpty() ? 0 : m_headerData.count();
|
||||
}
|
||||
|
||||
Qt::ItemFlags AlarmEventDataModel::flags(const QModelIndex& index) const
|
||||
{
|
||||
if(!index.isValid())
|
||||
return Qt::NoItemFlags;
|
||||
|
||||
Qt::ItemFlags flags = QAbstractTableModel::flags(index);
|
||||
flags |= Qt::ItemIsEditable; //不可编辑
|
||||
|
||||
return flags;
|
||||
}
|
||||
|
||||
void AlarmEventDataModel::iniHeaderData()
|
||||
{
|
||||
m_headerData.emplace_back(SectionData("序号", 90));
|
||||
m_headerData.emplace_back(SectionData("接收时间", 270));
|
||||
m_headerData.emplace_back(SectionData("SOE时间", 270));
|
||||
m_headerData.emplace_back(SectionData("厂站", 200));
|
||||
m_headerData.emplace_back(SectionData("间隔", 200));
|
||||
m_headerData.emplace_back(SectionData("信息", -1));
|
||||
m_headerData.emplace_back(SectionData("类型", 200));
|
||||
m_headerData.emplace_back(SectionData("等级", 150));
|
||||
m_headerData.emplace_back(SectionData("确认状态", 150));
|
||||
m_headerData.emplace_back(SectionData("操作", 300));
|
||||
}
|
||||
|
||||
|
||||
///////------AlarmEventDataDelegate-----
|
||||
AlarmEventDataDelegate::AlarmEventDataDelegate(QTableView* view, QObject* parent)
|
||||
: QStyledItemDelegate(parent)
|
||||
,m_tableView(view)
|
||||
{}
|
||||
|
||||
AlarmEventDataDelegate::~AlarmEventDataDelegate()
|
||||
{}
|
||||
|
||||
void AlarmEventDataDelegate::paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
|
||||
{
|
||||
//根据行号设置交替颜色
|
||||
QStyleOptionViewItem opt = option;
|
||||
initStyleOption(&opt, index);
|
||||
if((index.row() + 1) % 2 == 0)
|
||||
painter->fillRect(opt.rect, QColor(11, 26, 33, 200));
|
||||
else
|
||||
painter->fillRect(opt.rect, QColor(11, 26, 33, 0));
|
||||
|
||||
//绘制单元格边框(只绘制右边框,每行的最后一个单元格不绘制)
|
||||
if(m_tableView)
|
||||
{
|
||||
painter->save();
|
||||
QPen pen(QColor(60,60,60), 1);
|
||||
painter->setPen(pen);
|
||||
if(index.column() != m_tableView->model()->columnCount() - 1)
|
||||
painter->drawLine(opt.rect.topRight(), opt.rect.bottomRight());
|
||||
painter->restore();
|
||||
}
|
||||
|
||||
//绘制默认内容
|
||||
QStyledItemDelegate::paint(painter, option, index);
|
||||
}
|
||||
|
||||
|
||||
///////------AlarmEventDataView-----
|
||||
AlarmEventDataView::AlarmEventDataView(QWidget* parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
|
|
@ -12,6 +142,12 @@ AlarmEventDataView::AlarmEventDataView(QWidget* parent)
|
|||
m_tableView->setShowGrid(false);
|
||||
//m_tableView->setStyleSheet("QHeaderView{background-color: rgb(40, 40, 40);} QHeaderView::section{background-color:transparent;}");
|
||||
|
||||
m_tableModel = new AlarmEventDataModel(this);
|
||||
m_tableView->setModel(m_tableModel);
|
||||
|
||||
m_delegate = new AlarmEventDataDelegate(m_tableView, this);
|
||||
m_tableView->setItemDelegate(m_delegate);
|
||||
|
||||
m_vLayout = new QVBoxLayout(this);
|
||||
m_vLayout->setSpacing(0);
|
||||
m_vLayout->setContentsMargins(0, 0, 0, 0);
|
||||
|
|
|
|||
|
|
@ -1,16 +1,15 @@
|
|||
#include "alarmEventMainDialog.h"
|
||||
#include "ui_alarmEventMainDialog.h"
|
||||
|
||||
AlarmEventMainDialog::AlarmEventMainDialog(MainDialogType type, QWidget *parent)
|
||||
AlarmEventMainDialog::AlarmEventMainDialog(QWidget *parent)
|
||||
: QDialog(parent)
|
||||
, ui(new Ui::alarmEventMainDialog)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
setWindowFlags(Qt::FramelessWindowHint);
|
||||
setAttribute(Qt::WA_TranslucentBackground);
|
||||
|
||||
if(type == RealTime)
|
||||
ui->dataFilteringPanel->setVisible(false);
|
||||
else
|
||||
ui->dataFilteringPanel->setVisible(true);
|
||||
connect(ui->btnClose, &QPushButton::clicked, this, &AlarmEventMainDialog::onBtnClicked_close);
|
||||
}
|
||||
|
||||
AlarmEventMainDialog::~AlarmEventMainDialog()
|
||||
|
|
@ -18,6 +17,22 @@ AlarmEventMainDialog::~AlarmEventMainDialog()
|
|||
delete ui;
|
||||
}
|
||||
|
||||
void AlarmEventMainDialog::setMode(MainDialogMode mode)
|
||||
{
|
||||
if(mode == RealTime)
|
||||
{
|
||||
ui->label_WindowlTitle->setText("实时报警");
|
||||
ui->dataFilteringPanel->setVisible(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->label_WindowlTitle->setText("历史事件");
|
||||
ui->dataFilteringPanel->setVisible(true);
|
||||
}
|
||||
|
||||
m_mode = mode;
|
||||
}
|
||||
|
||||
void AlarmEventMainDialog::onBtnClicked_close()
|
||||
{
|
||||
//reject();
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
#include "dataPanel/dpConfigurationDialog.h"
|
||||
#include "dateTimeWidget.h"
|
||||
#include "util/TimeLine/timeLineWidget.h"
|
||||
#include "alarmEventMainDialog.h"
|
||||
|
||||
#include <QKeyEvent>
|
||||
#include <QMenu>
|
||||
|
|
@ -33,6 +34,7 @@ DashboardFrame::DashboardFrame(const QString& strName, dashboardFrame::frameType
|
|||
, m_curOperationDashboard(nullptr)
|
||||
, m_pPanelSelectionDialog(nullptr)
|
||||
, m_pPanelConfigurationDialog(nullptr)
|
||||
, m_pAlarmEventMainDialog(nullptr)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
setAcceptDrops(true);
|
||||
|
|
@ -78,11 +80,17 @@ DashboardFrame::DashboardFrame(const QString& strName, dashboardFrame::frameType
|
|||
connect(ui->btnAddPanel, SIGNAL(clicked()), this, SLOT(onBtnClicked_addDataPanel()));
|
||||
//connect(ui->btnDashboradList1, SIGNAL(clicked()), this, SLOT(onBtnClicked_dashboardList()));
|
||||
connect(ui->btnDashboradList2, SIGNAL(clicked()), this, SLOT(onBtnClicked_dashboardList()));
|
||||
connect(ui->btnAlarm, SIGNAL(clicked()), this, SLOT(onBtnClicked_showRealtimeEvents()));
|
||||
connect(ui->btnAllEvent, SIGNAL(clicked()), this, SLOT(onBtnClicked_showHistoricalEvents()));
|
||||
|
||||
m_pTimer_RealTime = new QTimer(this);
|
||||
m_pTimer_RealTime->setTimerType(Qt::PreciseTimer); //设置成高精度类型,默认为Qt::CoarseTimer(粗糙定时器)
|
||||
connect(m_pTimer_RealTime, SIGNAL(timeout()), this, SLOT(onTimeout_realTime()));
|
||||
m_pTimer_RealTime->start(1000);
|
||||
|
||||
//暂时放弃这两个按钮的逻辑
|
||||
ui->btnShowDashboards->setVisible(false);
|
||||
ui->btnShowNotifications->setVisible(false);
|
||||
}
|
||||
|
||||
DashboardFrame::~DashboardFrame()
|
||||
|
|
@ -489,7 +497,8 @@ void DashboardFrame::onBtnClicked_addDashboard()
|
|||
m_pDashboardNamingDialog = new DashboardNamingDialog(this);
|
||||
m_pDashboardNamingDialog->installEventFilter(this);
|
||||
connect(m_pDashboardNamingDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
||||
connect(m_pDashboardNamingDialog, SIGNAL(dashboardName(const QString&, const QString&)), this, SLOT(onSignal_dashboardNaming(const QString&, const QString&)));
|
||||
connect(m_pDashboardNamingDialog, &DashboardNamingDialog::dashboardName, this, &DashboardFrame::onSignal_dashboardNaming);
|
||||
//connect(m_pDashboardNamingDialog, SIGNAL(dashboardName(const QString&, const QString&)), this, SLOT(onSignal_dashboardNaming(const QString&, const QString&)));
|
||||
}
|
||||
|
||||
showTransparentMask();
|
||||
|
|
@ -567,6 +576,44 @@ void DashboardFrame::onBtnClicked_dashboardTab()
|
|||
setCurrentDashboard(strName);
|
||||
}
|
||||
|
||||
void DashboardFrame::onBtnClicked_showRealtimeEvents()
|
||||
{
|
||||
if(m_pAlarmEventMainDialog == nullptr)
|
||||
{
|
||||
m_pAlarmEventMainDialog = new AlarmEventMainDialog(this);
|
||||
connect(m_pAlarmEventMainDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
||||
}
|
||||
|
||||
m_pAlarmEventMainDialog->setMode(RealTime);
|
||||
int nWidth = this->width() * 0.8;
|
||||
int nHeight = this->height() * 0.8;
|
||||
int nX = this->geometry().x() + (this->width() - nWidth) * 0.5;
|
||||
int nY = this->geometry().y() + (this->height() - nHeight) * 0.5;
|
||||
showTransparentMask();
|
||||
m_pAlarmEventMainDialog->setGeometry(nX, nY, nWidth, nHeight);
|
||||
m_pAlarmEventMainDialog->show();
|
||||
m_pAlarmEventMainDialog->raise();
|
||||
}
|
||||
|
||||
void DashboardFrame::onBtnClicked_showHistoricalEvents()
|
||||
{
|
||||
if(m_pAlarmEventMainDialog == nullptr)
|
||||
{
|
||||
m_pAlarmEventMainDialog = new AlarmEventMainDialog(this);
|
||||
connect(m_pAlarmEventMainDialog, SIGNAL(sgl_hide()), this, SLOT(onSignal_subDialogClose()));
|
||||
}
|
||||
|
||||
m_pAlarmEventMainDialog->setMode(Historical);
|
||||
int nWidth = this->width() * 0.8;
|
||||
int nHeight = this->height() * 0.8;
|
||||
int nX = this->geometry().x() + (this->width() - nWidth) * 0.5;
|
||||
int nY = this->geometry().y() + (this->height() - nHeight) * 0.5;
|
||||
showTransparentMask();
|
||||
m_pAlarmEventMainDialog->setGeometry(nX, nY, nWidth, nHeight);
|
||||
m_pAlarmEventMainDialog->show();
|
||||
m_pAlarmEventMainDialog->raise();
|
||||
}
|
||||
|
||||
void DashboardFrame::onMenuAction_dashboardList()
|
||||
{
|
||||
QAction* action = qobject_cast<QAction*>(sender());
|
||||
|
|
@ -639,7 +686,7 @@ void DashboardFrame::onSignal_renameDashboard()
|
|||
{
|
||||
m_pDashboardNamingDialog = new DashboardNamingDialog(this);
|
||||
connect(m_pDashboardNamingDialog, SIGNAL(dlgHide()), this, SLOT(onSignal_subDialogClose()));
|
||||
connect(m_pDashboardNamingDialog, SIGNAL(dashboardName(const QString&, const QString&)), this, SLOT(onSignal_dashboardNaming(const QString&, const QString&)));
|
||||
connect(m_pDashboardNamingDialog, &DashboardNamingDialog::dashboardName, this, &DashboardFrame::onSignal_dashboardNaming);
|
||||
}
|
||||
|
||||
showTransparentMask();
|
||||
|
|
|
|||
|
|
@ -6,17 +6,18 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1496</width>
|
||||
<height>1006</height>
|
||||
<width>1539</width>
|
||||
<height>1005</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QDialog
|
||||
<string notr="true">QWidget #contentWidget
|
||||
{
|
||||
background-color:rgba(36,43,50,250);
|
||||
border:1px solid rgb(76,88,105);
|
||||
background-color: rgb(33, 39, 46);
|
||||
}
|
||||
|
||||
QPushButton
|
||||
|
|
@ -94,7 +95,25 @@ color: rgb(250, 250, 250);
|
|||
background-color: rgba(43, 102, 158, 80);
|
||||
}</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="hLayout_main" stretch="1,0">
|
||||
<layout class="QHBoxLayout" name="hLayout_main">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QWidget" name="contentWidget" native="true">
|
||||
<layout class="QHBoxLayout" name="hLayout_content">
|
||||
<property name="spacing">
|
||||
<number>5</number>
|
||||
</property>
|
||||
|
|
@ -108,12 +127,12 @@ background-color: rgba(43, 102, 158, 80);
|
|||
<number>7</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>5</number>
|
||||
<number>7</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="vLayout_central">
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
<number>15</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
|
|
@ -123,13 +142,13 @@ background-color: rgba(43, 102, 158, 80);
|
|||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>60</height>
|
||||
<height>70</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>60</height>
|
||||
<height>70</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
|
|
@ -144,11 +163,14 @@ border-right:0px;
|
|||
</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<property name="topMargin">
|
||||
<number>15</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QLabel" name="labeWindowlTitle">
|
||||
<widget class="QLabel" name="label_WindowlTitle">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color: rgb(250, 250, 250);
|
||||
font: 700 18pt "微软雅黑";
|
||||
|
|
@ -210,7 +232,7 @@ icon: url(:/images/icon_configuration.png);
|
|||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>设置</string>
|
||||
<string>配置</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
|
|
@ -223,13 +245,13 @@ icon: url(:/images/icon_configuration.png);
|
|||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>96</height>
|
||||
<height>81</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>96</height>
|
||||
<height>81</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
|
|
@ -242,19 +264,19 @@ icon: url(:/images/icon_configuration.png);
|
|||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2" stretch="1,1,1,1">
|
||||
<property name="spacing">
|
||||
<number>35</number>
|
||||
<number>60</number>
|
||||
</property>
|
||||
<property name="leftMargin">
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>10</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>8</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>10</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
|
|
@ -262,7 +284,7 @@ icon: url(:/images/icon_configuration.png);
|
|||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>5</number>
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_stationName">
|
||||
|
|
@ -352,7 +374,7 @@ icon: url(:/images/icon_configuration.png);
|
|||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>5</number>
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_eventType">
|
||||
|
|
@ -442,7 +464,7 @@ icon: url(:/images/icon_configuration.png);
|
|||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>5</number>
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_confirmStatus">
|
||||
|
|
@ -527,7 +549,7 @@ icon: url(:/images/icon_configuration.png);
|
|||
<number>3</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>5</number>
|
||||
<number>10</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label_beginTime">
|
||||
|
|
@ -621,9 +643,130 @@ icon: url(:/images/icon_configuration.png);
|
|||
<property name="styleSheet">
|
||||
<string notr="true">QWidget #tableView
|
||||
{
|
||||
background-color: rgba(54, 62, 74,100);
|
||||
background-color: rgba(54, 62, 74,90);
|
||||
}
|
||||
|
||||
QHeaderView
|
||||
{
|
||||
background-color: rgb(11, 26, 33);
|
||||
}
|
||||
QHeaderView::section
|
||||
{
|
||||
font: 700 12pt "微软雅黑";
|
||||
color: rgb(250, 250, 250);
|
||||
background-color:transparent;
|
||||
border:0px;
|
||||
border-right: 1px solid rgb(60,60,60);
|
||||
}
|
||||
QHeaderView::section:horizontal:last
|
||||
{
|
||||
border-right: 0px;
|
||||
}
|
||||
|
||||
QTableView
|
||||
{
|
||||
outline:0px;
|
||||
background-color: transparent;
|
||||
}
|
||||
QTableView::item
|
||||
{
|
||||
font: 12pt "黑体";
|
||||
color: rgb(250, 250, 250);
|
||||
background-color:transparent;
|
||||
border:0px;
|
||||
border-right: 1px solid rgb(60,60,60);
|
||||
}
|
||||
QTableView::item:hover
|
||||
{
|
||||
}
|
||||
QTableView::item:selected
|
||||
{
|
||||
}</string>
|
||||
</property>
|
||||
<widget class="QTableWidget" name="tableWidget">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>40</x>
|
||||
<y>50</y>
|
||||
<width>931</width>
|
||||
<height>411</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="textElideMode">
|
||||
<enum>Qt::TextElideMode::ElideNone</enum>
|
||||
</property>
|
||||
<property name="showGrid">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>新建行</string>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>新建行</string>
|
||||
</property>
|
||||
</row>
|
||||
<row>
|
||||
<property name="text">
|
||||
<string>新建行</string>
|
||||
</property>
|
||||
</row>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>序号</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>时间</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>厂站</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>详情</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>类型</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>级别</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>操作</string>
|
||||
</property>
|
||||
</column>
|
||||
<item row="0" column="0">
|
||||
<property name="text">
|
||||
<string>1</string>
|
||||
</property>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<property name="text">
|
||||
<string>2025-09-17 16:51:01</string>
|
||||
</property>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<property name="text">
|
||||
<string>灵州换流站</string>
|
||||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
|
|
@ -631,13 +774,13 @@ icon: url(:/images/icon_configuration.png);
|
|||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>31</height>
|
||||
<height>26</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>31</height>
|
||||
<height>26</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
|
|
@ -661,7 +804,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>8</y>
|
||||
<y>0</y>
|
||||
<width>21</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
|
|
@ -702,7 +845,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>170</x>
|
||||
<y>8</y>
|
||||
<y>0</y>
|
||||
<width>131</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
|
|
@ -724,7 +867,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>30</x>
|
||||
<y>8</y>
|
||||
<y>0</y>
|
||||
<width>21</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
|
|
@ -768,7 +911,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>105</x>
|
||||
<y>8</y>
|
||||
<y>0</y>
|
||||
<width>21</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
|
|
@ -812,7 +955,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>135</x>
|
||||
<y>8</y>
|
||||
<y>0</y>
|
||||
<width>21</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
|
|
@ -853,7 +996,7 @@ border:1px solid rgb(100,100,100);
|
|||
<property name="geometry">
|
||||
<rect>
|
||||
<x>60</x>
|
||||
<y>9</y>
|
||||
<y>0</y>
|
||||
<width>36</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
|
|
@ -930,6 +1073,9 @@ QPushButton:pressed
|
|||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>CustomLineEdit</class>
|
||||
|
|
|
|||
Loading…
Reference in New Issue