1.井壁取心横向可以多个 2.解决“多道超出屏幕,出现横向滚动条,点井屏幕跳到前面问题”
This commit is contained in:
parent
813cf49acf
commit
8497086c75
|
|
@ -546,6 +546,7 @@ void TransparentDraggableSwallCore::onMousePress(QMouseEvent *event)
|
|||
//double y = mPlot->yAxis->pixelToCoord(event->pos().y());
|
||||
|
||||
double y = mPlot->xAxis->pixelToCoord(event->pos().y());//x轴展示深度
|
||||
double x = mPlot->yAxis->pixelToCoord(event->pos().x());
|
||||
|
||||
QCPRange currentRange = getRange();
|
||||
|
||||
|
|
@ -558,7 +559,19 @@ void TransparentDraggableSwallCore::onMousePress(QMouseEvent *event)
|
|||
//else if(x >= currentRange.lower && x <= currentRange.upper) {
|
||||
else */
|
||||
if(y >= currentRange.lower && y <= currentRange.upper) {
|
||||
mDragMode = DragRect;
|
||||
double lY1Tmp = mPlot->yAxis->range().lower;
|
||||
double y1Tmp = mPlot->yAxis->coordToPixel(lY1Tmp);
|
||||
|
||||
double leftTmp = mPlot->yAxis->pixelToCoord(y1Tmp+m_fLeftSpace);//mRect->topLeft->coords().y();
|
||||
double rightTmp = mRect->bottomRight->coords().y();
|
||||
if(x>=leftTmp && x<=rightTmp)
|
||||
{
|
||||
mDragMode = DragRect;
|
||||
}
|
||||
else {
|
||||
mDragMode = DragNone;
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
mDragMode = DragNone;
|
||||
|
|
@ -638,25 +651,25 @@ void TransparentDraggableSwallCore::onMouseMove(QMouseEvent *event)
|
|||
newRange.lower = center - width/2;
|
||||
newRange.upper = center + width/2;
|
||||
|
||||
// 检查是否超出轴范围
|
||||
if(newRange.lower < getMyLower()) {
|
||||
newRange.lower = getMyLower();
|
||||
newRange.upper = newRange.lower + width;
|
||||
}
|
||||
else if(newRange.upper > getMyUpper()) {
|
||||
newRange.upper = getMyUpper();
|
||||
newRange.lower = newRange.upper - width;
|
||||
}
|
||||
// 检查是否超出轴范围(允许横向多个取心)
|
||||
// if(newRange.lower < getMyLower()) {
|
||||
// newRange.lower = getMyLower();
|
||||
// newRange.upper = newRange.lower + width;
|
||||
// }
|
||||
// else if(newRange.upper > getMyUpper()) {
|
||||
// newRange.upper = getMyUpper();
|
||||
// newRange.lower = newRange.upper - width;
|
||||
// }
|
||||
|
||||
// QCPRange axisRange = mPlot->xAxis->range();
|
||||
// if(newRange.lower < axisRange.lower) {
|
||||
// newRange.lower = axisRange.lower;
|
||||
// newRange.upper = newRange.lower + width;
|
||||
// }
|
||||
// else if(newRange.upper > axisRange.upper) {
|
||||
// newRange.upper = axisRange.upper;
|
||||
// newRange.lower = newRange.upper - width;
|
||||
// }
|
||||
QCPRange axisRange = mPlot->xAxis->range();
|
||||
if(newRange.lower < axisRange.lower) {
|
||||
newRange.lower = axisRange.lower;
|
||||
newRange.upper = newRange.lower + width;
|
||||
}
|
||||
else if(newRange.upper > axisRange.upper) {
|
||||
newRange.upper = axisRange.upper;
|
||||
newRange.lower = newRange.upper - width;
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -116,6 +116,8 @@ MainWindowCurve::MainWindowCurve(QWidget *parent) :
|
|||
//我们让一列也可以滑动
|
||||
ui->tableWidget_2->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
|
||||
ui->tableWidget_2->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);
|
||||
//防止编辑区域比较宽时,点击属性名称列或者赋值列导致页面左右动
|
||||
ui->tableWidget_2->setAutoScroll(false);
|
||||
|
||||
connect(ui->tableWidget_2, SIGNAL(itemClicked(QTableWidgetItem*)), this, SLOT(onItemClicked(QTableWidgetItem*)));
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user