[英]add mouse listener to a draw string text
我想在文本中添加一个鼠标侦听器。 可行吗? 谢谢
BufferStrategy bs=this.getBufferStrategy();
if(bs==null){
createBufferStrategy(3);
return;
}
Graphics g=bs.getDrawGraphics();
g.fillRect(0, 0, 800, 400);
g.setFont(new Font("Verdana",0 ,50));
g.setColor(Color.WHITE);
g.drawString("Play", 600, 60);
由于您的Graphics
对象不了解其上的各个“项目”,因此无法将侦听器本身添加到文本“ Play”中。
一种方法是不使用一个“大” Graphics
对象,而是为“播放”文本使用一个单独的组件。 您可以将侦听器附加到此较小的组件。 另一种方法是将侦听器添加到“大”组件,并在click事件中查询鼠标坐标。
您可以尝试这样的事情。
final JTextField textField = new JTextField("Text goes here");
textField.addMouseListener(new MouseAdapter(){
@Override
public void mouseClicked(MouseEvent e){
//take some action here
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.