Java中如何判断鼠标是否在一个空间内???
就是创建一个frame程序,比如在JTextfield中,在初始化时就设定输出内容,然后用鼠标单击该JTextfield就将其输出内容置为空,等到鼠标单击别处时,JTex...
就是创建一个frame程序,比如在JTextfield 中,在初始化时就设定输出内容,然后用鼠标单击该JTextfield就将其输出内容置为空,等到鼠标单击别处时,JTextfield中原来的内容又恢复显示,
不知如何实现,望高人指教!!!!!!! 展开
不知如何实现,望高人指教!!!!!!! 展开
3个回答
展开全部
楼上的代码有问题,我做了更正
public void mousePressed(MouseEvent e) {
if (e.getSource() == tf && tf.getText().equals("你好"))
tf.setText("");
else if (e.getSource() != tf && tf.getText().equals(""))
tf.setText("你好");
}
去掉中间的判断,否则你在别的地方点第二下下鼠标,就看到问题了
public void mousePressed(MouseEvent e) {
if (e.getSource() == tf && tf.getText().equals("你好"))
tf.setText("");
else if (e.getSource() != tf && tf.getText().equals(""))
tf.setText("你好");
}
去掉中间的判断,否则你在别的地方点第二下下鼠标,就看到问题了
展开全部
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class Test extends JFrame implements MouseListener
{
private JPanel pan;
private JTextField tf;
public Test()
{
pan = new JPanel(null);
tf = new JTextField("你好");
tf.addMouseListener(this);
tf.setBounds(300,300,100,25);
pan.add(tf);
this.add(pan);
this.addMouseListener(this);
this.setBounds(200,200,650,600);
this.setVisible(true);
}
public static void main(String ads[])
{
new Test();
}
public void mouseClicked(MouseEvent e)
{
}
public void mousePressed(MouseEvent e)
{
if(e.getSource()==tf&&tf.getText().equals("你好"))
tf.setText("");
else if(e.getSource()!=tf&&tf.getText().equals("你好"))
tf.setText("");
else if(e.getSource()!=tf&&tf.getText().equals(""))
tf.setText("你好");
}
public void mouseReleased(MouseEvent e) {
// TODO: Add your code here
}
public void mouseEntered(MouseEvent e) {
// TODO: Add your code here
}
public void mouseExited(MouseEvent e) {
// TODO: Add your code here
}
}////////////////////////////////
import java.awt.event.*;
import java.awt.*;
public class Test extends JFrame implements MouseListener
{
private JPanel pan;
private JTextField tf;
public Test()
{
pan = new JPanel(null);
tf = new JTextField("你好");
tf.addMouseListener(this);
tf.setBounds(300,300,100,25);
pan.add(tf);
this.add(pan);
this.addMouseListener(this);
this.setBounds(200,200,650,600);
this.setVisible(true);
}
public static void main(String ads[])
{
new Test();
}
public void mouseClicked(MouseEvent e)
{
}
public void mousePressed(MouseEvent e)
{
if(e.getSource()==tf&&tf.getText().equals("你好"))
tf.setText("");
else if(e.getSource()!=tf&&tf.getText().equals("你好"))
tf.setText("");
else if(e.getSource()!=tf&&tf.getText().equals(""))
tf.setText("你好");
}
public void mouseReleased(MouseEvent e) {
// TODO: Add your code here
}
public void mouseEntered(MouseEvent e) {
// TODO: Add your code here
}
public void mouseExited(MouseEvent e) {
// TODO: Add your code here
}
}////////////////////////////////
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这不是你要考虑的,操作系统知道,你只需要添加相应的消息相应它就可以自动判断鼠标位置了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询