Java图形中的MouseListener
我用Mouselistener在MouseInside为真时让我的眼睛睁开,在MouseInside为假时让我的眼睛闭上。(也就是说,当鼠标悬停在头部上方时,眼睛是睁开的,当鼠标悬停在头部上方时,眼睛是闭着的)。我首先创建了扩展JPanel的类头,并创建了私有布尔mouseInside。然后我创建了维度,添加了一个边框,然后创建了嵌套类MyMouseListener,它根据鼠标的位置将布尔值初始化为true或false,然后调用repaint。然后,我将鼠标听筒添加到我的头部对象。在下面,我构建了头部对象和眼睛对象,这取决于mouseInside布尔值是真是假。下面我创建了JFrame来演示和构建头部 我不知道为什么它不工作,这是我的代码(我是一个新程序员)Java图形中的MouseListener,java,swing,Java,Swing,我用Mouselistener在MouseInside为真时让我的眼睛睁开,在MouseInside为假时让我的眼睛闭上。(也就是说,当鼠标悬停在头部上方时,眼睛是睁开的,当鼠标悬停在头部上方时,眼睛是闭着的)。我首先创建了扩展JPanel的类头,并创建了私有布尔mouseInside。然后我创建了维度,添加了一个边框,然后创建了嵌套类MyMouseListener,它根据鼠标的位置将布尔值初始化为true或false,然后调用repaint。然后,我将鼠标听筒添加到我的头部对象。在下面,我构建
很难将代码理解为格式。但是,在不同的作用域中似乎有一个同名的变量
final boolean mouseInside = false;
不会做任何事的。删除
最终布尔值
。(以前对访问封闭上下文的final
s的限制只涉及方法和构造函数的参数和局部变量,而不是对象和类的字段。)只需删除传递给类构造函数头的mouseInside
参数或更改其名称即可。
您的类变量mouseInside
带有该参数的阴影。@Careleus1如果您将其标记为解决方案,那就太好了,如果问题已经解决,则无需删除该问题。这对以后的人很有用。不要从你的问题中删除文本。如果问题已经解决,那么不要忘记通过单击答案旁边的复选标记来“接受”帮助解决问题的答案。
final boolean mouseInside = false;