Jfree chart Мышь Перетащите для увеличения - PullRequest
2 голосов
/ 17 августа 2011

Как изменить событие mouseDragged в ChartPanel так, чтобы я хотел выполнить некоторую обработку до / после масштабирования?У меня есть следующая chartPanel,

JFreeChart chart = new JFreeChart(
                "Demo", JFreeChart.DEFAULT_TITLE_FONT,plot, true);
ChartPanel chartPanel = new ChartPanel(chart);

Всякий раз, когда мышь перетаскивают, я хочу вызывать свою функцию до / после вызова mouseDragged ().Как это сделать?

chartPanel.addMouseMotionListener(new MouseMotionListener() {

    @Override
    public void mouseDragged(MouseEvent e) {
        // TODO Auto-generated method stub
    }

Я не вижу super.mouseDragged(e).как вызвать мою функцию после увеличения графика.По сути, я хочу, чтобы после масштабирования диаграммы я хотел получить диапазон координат x и y и добавить подходящий XYAnnotation.Как я могу это сделать?

1 Ответ

3 голосов
/ 18 августа 2011

Вы можете переопределить mouseDragged() в org.jfree.chart.ChartPanel и выполнять обработку до или после super.mouseDragged(e).

Приложение: MouseMotionAdapter может быть удобной альтернативой:

chartPanel.addMouseMotionListener(new MouseMotionAdapter() {

    @Override
    public void mouseDragged(MouseEvent e) {
        // process before
        super.mouseDragged(e);
        // process after
    }
});
...