我正在尝试使右轴可拖动。
现在使用其中一个站点示例,我可以yAxis
通过双击它来使第一个可拖动。
void MainWindow::mousePress()
{
// if an axis is selected, only allow the direction of that axis to be dragged
// if no axis is selected, both directions may be dragged
if (ui->customPlot->xAxis->selectedParts().testFlag(QCPAxis::spAxis))
ui->customPlot->axisRect()->setRangeDrag(ui->customPlot->xAxis->orientation());
else if (ui->customPlot->yAxis->selectedParts().testFlag(QCPAxis::spAxis))
ui->customPlot->axisRect()->setRangeDrag(ui->customPlot->yAxis->orientation());
else if (ui->customPlot->yAxis2->selectedParts().testFlag(QCPAxis::spAxis))
ui->customPlot->axisRect()->setRangeDrag(ui->customPlot->yAxis2->orientation());
else
ui->customPlot->axisRect()->setRangeDrag(Qt::Horizontal|Qt::Vertical);
}
我的图表有 2 条线,每条线都有不同的yAxis
. 我想要实现的是对第二个(右侧)yAxis
称为yAxis2
. 即使我选择了下面的代码yAxis2
,它也是yAxis
垂直拖动的。
我猜问题出在 axisRect() 中,它只与左 yAxis 而不是它们两者有关。