Есть ли какие-либо методы, которые я хочу увеличить для вида окна просмотра, но расположение компонентов внутри не меняется. Настройка заключается в том, что у меня есть большой jpanel внутри jscrollpane, в котором я хочу только изменить вид в увеличенный режим. объекты можно перетаскивать и опускать в любом месте внутри панели, поэтому важно, чтобы положение xy оставалось.JScrollPane Увеличить вид с компонентами внутри
вот мой нынешний код увеличения, что я делаю, я использую масштаб 2d для увеличения масштаба. проблема в том, что позиция беспорядок. Я также хочу уменьшить масштаб, чтобы вся панель соответствовала jscrollpane.
//zoom in draw method using scale
g2.translate(zoomX, zoomY);
g2.scale(zoomScale, zoomScale);
g2.translate(-zoomX, -zoomY);
Im также думает о том, чтобы манипулировать окном просмотра. вот моя инициализация видового экрана. Размер 2000 на 1000 - это панель, а 750 на 698 - экстензия моего окна просмотра. любое предложение о том, как я буду масштабировать, не нарушая положение компонентов? Возможно, перемещение setviewposition является частью решения?
view = new JViewport();
view.setViewSize(new Dimension(2000,1000));
view.setExtentSize(new Dimension(750,698));
view.setViewPosition(new Point(view.getExtentSize().width/2,view.getExtentSize().height/2));
есть масштабирование в JScollPane, разрешенное несколько раз, включая центрирование по желаемой точке, пожалуйста, найдите здесь, – mKorbel
да есть много решений масштабирования с использованием scrollpane, но на этот раз я хочу, чтобы это было похоже на функцию масштабирования карты Google, где весь jpanel внутри jscrollpane уменьшается только в представлении. Другие решения предназначены только для масштабирования jscrollpane с изображением, но не jscrollpane с компонентами внутри, которые можно перетаскивать и удалять внутри панели. С его помощью можно масштабировать масштабируемое приложение, которое может быть использовано при масштабировании, а также маршрутизаторы и коммутаторы cisco. –
не знаю, как кодируются Google Maps, но я думаю, что там есть о переключателе betweens, а не в реальном масштабировании, конечно, возможно, я ошибаюсь – mKorbel