gpt4 book ai didi

Java 鼠标位置计算滚动的区域

转载 作者:行者123 更新时间:2023-12-01 14:43:42 30 4
gpt4 key购买 nike

我不知道如何为此起一个好的标题..但是我们开始吧:

当我单击标签时,我试图使用添加到 JScrollPane 的 JViewPort 中的 MouseAdapter 来获取准确的鼠标位置我的面板本身添加到 JScrollPane 内。

当我尝试获取鼠标位置的坐标时,它始终相对于可见面板的区域。由于滚动,它不计算不可见的区域。

我不知道如果我说清楚了,我希望如此..已经尝试使用 JViewPort 和 JScrollPane 中的 getMousePosition 但也不起作用。非常感谢!

这是一些代码:内部有面板的框架结构..

public GraphViewer(ArrayList<TimeSlot> graph) throws HeadlessException {
final MyCustomPanel panel = new MyCustomPanel(graph);
panel.setPreferredSize(panel.getLargestSize());

scroll = new JScrollPane(panel);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout());
add(scroll, BorderLayout.CENTER);

JViewport v = scroll.getViewport();
ViewportDragScrollListener l = new ViewportDragScrollListener(panel);
v.addMouseMotionListener(l);
v.addMouseListener(l);
}

最佳答案

将 JViewport.getViewPosition() 添加到从 getMousePosition() 获取的坐标怎么样?

关于Java 鼠标位置计算滚动的区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15681319/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com