所以我试图让这个程序允许用户使用java标记照片(有点像Facebook标记)。我已经完成了加载图像,并在用户单击图像区域时创建了mouselistener。
当用户点击照片的某个区域时,如何显示JTextField?
我认为JTextField可以在某个方面用户可以输入他/她的名字作为照片的标签。
另外,您认为我应该在哪里放置JTextField代码?在主要?
答案 0 :(得分:4)
你可以得到X和Y坐标(正如Daggeto所说)。然后,您可以使用setVisible(true)
显示文本字段答案 1 :(得分:2)
MouseEvent.getX()
和MouseEvent.getY()
返回事件相对于源组件的水平x ant垂直y位置。
然后,如果您的图像区域描述为x1,x2,y1,y2,您可以通过此“if”检查此区域中的点击位置:
int x0 = MouseEvent.getX();
int y0 = MouseEvent.getY();
if(x0>x1 && x0<x2 && y0>y1 && y0<y2){
JTextField.setVisible(true);
}
答案 2 :(得分:1)
只需在JTextField对象上使用setVisible()函数,并在用户图像的某个部分时设置其值。