java - 将图像与鼠标单击关联

标签 java image swing jpanel mouseclick-event

JPanel 中的图像与鼠标单击关联起来以执行某些操作的最佳方法是什么?我的意思是,API 中是否有任何函数可以做到这一点?如果没有,最好的解决方案是什么?

顺便说一句,对于您可能想知道为什么我在这件事上寻求帮助是因为我正在做一个数独游戏,并且我的代码已经随机生成了矩阵中的所有数字,请检查解决方案是正确的,唯一尚未完成的是界面(用户选择一个正方形以便在其中选择一个数字)。 谢谢。

最佳答案

“最好”的方法?使用JLabel

另一种方式,使用自定义的JPanel,它负责渲染单个图像并通过面板的paintComponent方法绘制它

一种“有趣”的方式,使用自定义的JPanel来绘制所有图像,维护在某种List中,其中每个图像都与一个矩形相关联 描述图像的位置和大小。单击面板时,循环遍历 Rectangle List 并使用 Rectanglecontains 方法来确定是否鼠标事件发生在其中,使用矩形的索引来循环图像(或使用某种Map来维护两者之间的链接)

您要做什么取决于您想要做多少工作以及您打算实现什么功能。

仔细看看:

关于java - 将图像与鼠标单击关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27750202/

相关文章:

java - Android:检测长按弹出菜单项

即使图像路径发生变化,Javascript 代码也会绘制相同的图像

css - 使用CSS将图标放在按钮的右上角

android - 无法在opencv中加载haarcascadeshaarcascade.xml

java - 两个不同框架上的相同 JPanel 对象会使前一个对象无效

java - 这里面的时间复杂度是多少?

java - 如何在java中的Lotus Notes中获取example@abc.com中的电子邮件ID而不是 "CN= example/OU= Server/O=company"

java - java 8中的.net列表分组依据?

java - DisplaySingle.setLcdValueFont 在 SteelSeries 中没有效果

java - 如何通过 Swing 中的中间面板使 View 居中