Оптимизировал дерево в Задачах (размеры колонок)

This commit is contained in:
2025-09-25 17:56:46 +03:00
parent b055ff4ed4
commit 7c70fc90d6
6 changed files with 139 additions and 89 deletions

View File

@@ -4,6 +4,7 @@
#include <QTreeWidget>
#include <QThread>
#include <QResizeEvent>
#include <QScrollBar>
#include "fimtaskswidget.h"
#include "ui_fimtaskswidget.h"
#include "tasksAmmFim.h"
@@ -121,27 +122,10 @@ void FIMtasksWidget::setOneTaskFim(TaskAmmFim* task)
void FIMtasksWidget::resizeEvent(QResizeEvent *event)
{
setWidthColumnsTree();
QSize size = event->size();
waitAnimationWidget->resize(size);
int width = treeWidget->width();
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_ID, 50);
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_status, 130);
int widthTitle;
if(type == TypeListTreeAMMFIM::listCommon)
widthTitle = width - (20 + 10);
else
{
#ifdef PROJECT_TYPE_DEBUG
widthTitle = width - (180 + 10);
#else
widthTitle = width - (130 + 10);
#endif
}
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_Title, widthTitle);
}
void FIMtasksWidget::closeDlgCheckTask()
@@ -311,13 +295,49 @@ void FIMtasksWidget::reSetHeadTreeWidget()
QStringList listHeaders;
if(type == TypeListTreeAMMFIM::listForTrainee)
listHeaders = QStringList{tr("Task FIM"), tr("ID"), tr("Status")};
listHeaders = QStringList{tr("Task FIM"), tr("Status"), tr("ID")};
else
listHeaders = QStringList{tr("Task FIM"), tr("ID"), tr("Status")};
listHeaders = QStringList{tr("Task FIM"), tr("Status"), tr("ID")};
treeWidget->setHeaderLabels(listHeaders);
}
void FIMtasksWidget::setWidthColumnsTree()
{
listWidthColumn.clear();
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_Title, 100);
listWidthColumn.append(100);
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_status, 130);
listWidthColumn.append(130);
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_ID, 50);
listWidthColumn.append(50);
treeWidget->setColumnWidth(ColumnsTreeFIM::clmnFIM_Title, calculateWidth_0Column());
}
int FIMtasksWidget::calculateWidth_0Column()
{
int widthHeader = treeWidget->width() - 20;
int width0Column = 0;
int widthSB = 0;
if(treeWidget->verticalScrollBar()->isVisible())
widthSB = treeWidget->verticalScrollBar()->size().width();
int cntColumns = treeWidget->columnCount();
int widthRightColumns = 0;
for (int i = 1; i < cntColumns; i++)
{
if(! treeWidget->isColumnHidden(i))
{//Колонка не скрыта
int w = listWidthColumn.at(i);
widthRightColumns += w;
}
}
width0Column = widthHeader - widthRightColumns - widthSB;
return width0Column;
}
void FIMtasksWidget::assignTaskFIMtoTrainee()
{
QTreeWidgetItem *current = treeWidget->currentItem();