java如何创建一个JPanel矩形?
我有一个JLabel
的图片,我想做的是当我点击JLabel
时,会出现另一个Jlabel
的矩形
我试过使用paintComponent
或paint
,但不幸的是,它对我的程序不起作用。所以我不得不认为,除了paintComponent
和/或paint
之外,还有其他方法
其目的是用名字标记图像的某个部分,就像在Facebook上一样
你可以在下面搜索框中键入要查询的问题!
我有一个JLabel
的图片,我想做的是当我点击JLabel
时,会出现另一个Jlabel
的矩形
我试过使用paintComponent
或paint
,但不幸的是,它对我的程序不起作用。所以我不得不认为,除了paintComponent
和/或paint
之外,还有其他方法
其目的是用名字标记图像的某个部分,就像在Facebook上一样
# 1 楼答案
哇
根据佩斯对问题的描述,你必须做以下几点(我认为):
这幅画必须直接画在JPanel上。这样,当有人点击图片时,你可以通过JPanel action listener获得鼠标的x和y坐标
然后,您将创建一个带有透明JPanel的JDialog,该JPanel有一个边框、一个名称文本框和一个OK按钮。(不妨将所有内容放在一个对话框窗口中。)JDialog是可移动的,但是您必须创建一个JDialog侦听器,它可以跟踪JDialog中透明JPanel左上角或中心的x和y坐标
JDialog JPanel不会真正透明。你必须通过注意JDialog JPanel在图片JPanel上的位置,并将图片JPanel中的图像部分复制到JDialog JPanel来创建透明的错觉
与让JDialog正常工作相比,剩下的工作应该相当简单
编辑添加:这里是JPanel的一个扩展,它将直接在JPanel上绘制图片,并处理鼠标按下的事件