可视解释视图默认居中显示

This commit is contained in:
jiayulong 2026-05-28 17:20:35 +08:00
parent 18027ba0e5
commit 277346bceb
2 changed files with 34 additions and 9 deletions

View File

@ -137,6 +137,7 @@ MainWindowCurve::MainWindowCurve(QWidget *parent) :
connect(ui->verticalScrollBar_2, SIGNAL(valueChanged(int)), this, SLOT(vertScrollBarChanged_Head(int)));
connect(this, SIGNAL(sig_NewTrackChangeWidth(QString, double)), this, SLOT(s_NewTrackChangeWidth(QString, double)));
connect(this, SIGNAL(sig_resizeWindow()), this, SLOT(resizeWindow()));
connect(CallManage::getInstance(), SIGNAL(sig_mouseWheel(QWheelEvent*)), this, SLOT(s_mouseWheel(QWheelEvent*)));
connect(CallManage::getInstance(), SIGNAL(sig_changeScale(QString, int)), this, SLOT(s_changeScale(QString, int)));
@ -271,15 +272,18 @@ void MainWindowCurve::s_setRangeVScrollBar2(QString strUuid)
ui->verticalScrollBar_2->setRange(0, iTableSize_Head_Biggest-100-100);
ui->verticalScrollBar_2->setValue(0);
emit sig_resizeWindow();
}
//窗口居中处理
void MainWindowCurve::resizeWindow()
{
//
QRect rect = this->rect();
//QRect rect = this->rect();
int tempWidth = 0;
int tempHight = 0;
QRect rect2 = ui->centralwidget->geometry();
for(int i=0; i<ui->tableWidget_2->columnCount(); i++)
{
@ -293,26 +297,36 @@ void MainWindowCurve::resizeWindow()
tempHight += 1;
}
int left, top, right, bottom;
if (ui->centralwidget->layout())
{
ui->centralwidget->layout()->getContentsMargins(&left, &top, &right, &bottom);
}
//预览图
if(g_bPreviewPrint)
{
ui->tableWidget_2->move(0, 2);
ui->tableWidget_2->move(left, top);
//ui->tableWidget_2->setGeometry(0, 2, tempWidth, tempHight);
}
else
{
//调整大小
if(rect.width()>tempWidth)
int iScreenWidth = rect2.width()- left -right - ui->verticalScrollBar->width();
if(iScreenWidth >tempWidth)
{
ui->tableWidget_2->move((rect.width()-tempWidth)/2, 2);
ui->tableWidget_2->move((iScreenWidth-tempWidth)/2, top);
//ui->tableWidget_2->setGeometry((rect.width()-tempWidth)/2, 2, tempWidth, tempHight);
}
else
{
ui->tableWidget_2->move(0, 2);
ui->tableWidget_2->move(left, top);
//ui->tableWidget_2->setGeometry(0, 2, tempWidth, tempHight);
}
}
//刷新
ui->tableWidget_2->update();
//update();
}
//2个滚动条位置
@ -659,7 +673,7 @@ void MainWindowCurve::initMainToolBar()
ui->mainToolBar->addAction(m_executeDepthShiftAc); //校深
ui->mainToolBar->addAction(m_joindepthAc); //拼接
ui->mainToolBar->addAction(m_autorollAc); //图像自滚
//ui->mainToolBar->addAction(m_PreviewPrintAc); //预览图
ui->mainToolBar->addAction(m_PreviewPrintAc); //预览图
ui->mainToolBar->addAction(m_ModuleOpenAc); //处理方法
// 设置为可选中
@ -3042,7 +3056,8 @@ void MainWindowCurve::s_PreviewPrint()
{
g_bPreviewPrint = false;
}
resizeWindow();
//
emit sig_resizeWindow();
}
//校深
@ -3347,6 +3362,8 @@ void MainWindowCurve::_slotExport(QPrinter &printer, int IsBmp, QString pngName,
//切换回锁头模式
m_fixwellsectionHeaderAc->setChecked(true);
//预览
m_PreviewPrintAc->setChecked(true);
ShowTableHead_All();
ui->tableWidget_2->verticalScrollBar()->setValue(0);
@ -3827,15 +3844,21 @@ void MainWindowCurve::_slotExport(QPrinter &printer, int IsBmp, QString pngName,
//ui->verticalScrollBar->setValue(-m_iY1*100);//设置右侧滚动条
ui->verticalScrollBar->setValue(newValue_last*100);//设置右侧滚动条
//居中显示
m_PreviewPrintAc->setChecked(false);
emit sig_resizeWindow();
//
ShowTableHead_One();
//2个滚动条位置
SetScrollBar_Geometry();
if(bOK)
{
QMessageBox::information(NULL,"提示","图件输出完成!",QMessageBox::Ok);
}
}
//导出长图
@ -5171,6 +5194,8 @@ void MainWindowCurve::Open(QString fileFull)
ui->verticalScrollBar->setValue(-m_iY2*100);
QMessageBox::information(NULL,"提示","模板加载完成!",QMessageBox::Ok);
emit sig_resizeWindow();
} else {
qWarning() << "JSON 模板文件打开失败:" << file.errorString();
QMessageBox::information(NULL,"提示","模板加载失败!",QMessageBox::Ok);
@ -6004,7 +6029,6 @@ void MainWindowCurve::slotDeleteSelectWell()
ui->tableWidget_2->removeColumn(column);
ui->tableWidget_2->removeColumn(column-1);//空白列,注意先删除选中列,否则列号改变
}
//resizeWindow();
}
//重新设置滚动条范围
emit CallManage::getInstance()->sig_setRangeVScrollBar2(m_strUuid);

View File

@ -181,6 +181,7 @@ public:
signals:
void sig_NewTrackChangeWidth(QString strWellName, double nW=0);//新建道后,改变井宽
void sig_resizeWindow();
public slots:
void slot_time();