- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试在类 A 中处理 MousePressed 事件,该类从抽象类 B 扩展并实现接口(interface) C,但我只处理 MouseClicked,MousePressed 不起作用
接口(interface)C
public interface C {
public void setText(String msg, Dimension d);
public void setVisible(boolean b);
public boolean isVisible();
public Dimension getSize();
public void setLocation(Point p);
}
抽象类B
public abstract class B {
public B() {
}
int x, y, w, h, size;
private boolean visible = false;
MouseListener mouseListener = null;
boolean isInner(int p_x, int p_y) {
......
}
public void addMouseListener(MouseListener l) {
mouseListener = l;
}
public void setVisible(boolean b) {
.....
}
public boolean isVisible() {
........
}
public void repaint() {
.......
}
public void setSize(int size) {
.......
}
public void setLocation(int x, int y) {
........
}
public Dimension getSize() {
.......
}
public Point getLocationOnScreen() {
.........
}
}
我的A类:
public class A extends B implements C {
private String _text;
private String[] _lines;
private Color _backgroundColor = new Color(255, 255, 192);
private Color _borderColor = new Color(128, 128, 128);
private Color _foreColor = Color.black;
private int _fontSize = 9;
private boolean inner_viewer = false;
private TextLayout textLayout;
private TextLayout _lstTextLayout[];
public A(String msg, Dimension d, int fontSize, Color foreColor, Color bkColor, Color borderColor) {
setText(msg, d, fontSize, foreColor, bkColor, borderColor);
inner_viewer = EXE_NAME.equals(D.get_extensionToolCommand());
this.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {
System.err.println("Released");
}
@Override
public void mousePressed(MouseEvent e) {
System.err.println("Pressed");
}
@Override
public void mouseExited(MouseEvent e) {
System.err.println("Exited");
}
@Override
public void mouseEntered(MouseEvent e) {
System.err.println("Entered");
}
@Override
public void mouseClicked(MouseEvent e) {
System.err.println("Click");
}
});
}
@Override
public void setText(String msg, Dimension d, int fontSize, Color foreColor, Color bkColor, Color borderColor) {
this._fontSize = fontSize;
this._foreColor = foreColor;
this._backgroundColor = bkColor;
this._borderColor = borderColor;
this._text = msg;
this.w = d.width;
this.h = d.height;
this._lines = _text.split("\n");
this._lstTextLayout = new TextLayout[_lines.length];
}
@Override
public void setLocation(Point p) {
super.setLocation(p.x, p.y);
}
public void paint(Graphics g) {
................
}}
我不明白“为什么只有 MouseClicked 工作正常,所有其他鼠标事件都不起作用”。
感谢您的所有回答。
最佳答案
您所声称的情况是不可能的。 MouseClicked 是 MousePressed 和 MouseReleased 的弟弟...它本身并不是一个系统事件,而是由 MousePressed 和 MouseReleased 之间的计时生成的合成事件。要进一步证明这一点,请查看 java.awt.Robot... 看到其中的 MouseClicked 方法吗?不,因为没有。
不可能。案件已结
关于Java 鼠标事件 - MouseClicked 工作正常,但 MousePressed 和 MouseReleased 不行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31313537/
我创建这个是为了当在鼠标的 x 和 y 坐标处按下鼠标时画一条鱼。但我似乎没有调用drawfish 方法。我找不到它不起作用的原因。我将非常感谢任何帮助。 /*FishTank*/ impor
我用 Java 编写了一个简单的实用程序,可以让鼠标单击任意位置,每 X 毫秒一次: import java.awt.Robot; import java.awt.event.InputEvent;
我正在尝试做一些非常基本的事情:编写程序,在两点之间的框架上画一条线:按下鼠标的点和释放鼠标的点。 我有这些类(class): import java.awt.Graphics; public cla
我知道有很多关于 mousePressed 无法正常工作的线程,但我还没有找到问题的答案。我编写了一个程序,只是为了好玩和体验,但是我在使用 Robot 类的 mousePressed 方法时遇到了问
我正在制作有关处理的动画。然后,我有一个关于灯的问题。通常,我的代码比较长。但是,我制作了一个简单的代码,对初学者也很有用。 void setup() { size(400, 400, P3D);
当用户点击它时,我试图获取 JOGL 中像素的颜色。如果我将以下代码放入显示方法中(来自GLEventListener),它就可以正常工作。 FloatBuffer buffer = FloatBuf
所以我有一个标签,我想做下一个,默认情况下它以红色背景颜色开始,当我第一次单击(鼠标按下)时,我将背景颜色更改为绿色。 现在,我希望当我第二次按下它时,一旦我再次按下它,它就会变回红色。 就像是红色的
在 mousePressed 方法中,我无法使用任何与图形相关的方法,例如此代码将运行但不起作用 import org.newdawn.slick.GameContainer; import org.
我正在尝试在按钮 4 上使用鼠标事件。使用 时返回的值 int moused = MouseInfo.getNumberOfButtons(); 方法是5。除了右键单击按钮4之外,我不知道还有什么按钮
我有一小段原型(prototype)代码。 我试图让它在 mousePressed() 或 mouseClicked() 上单击的线条的颜色会改变。 我这辈子都无法弄清楚! 任何帮助将不胜感激! 我到
在下面的代码中,点击标签本应使其隐藏,但该方法从未被调用!我在这里错过了什么? package com.hermaryopto.lib.output.message; import java.
我正在编写一个程序,鼠标监听器 mousePressed() 似乎没有响应。我现在已经编写了一些 GUI 程序,并且比较了这些代码,我没有发现任何显着差异可以解释缺少鼠标监听的原因。以下代码不完整,其
我创建了一个 foreach 循环,它创建 ImageView 并使用 javafx 显示它们,但是找到的每个 ImageView 都必须有一个类似于 mousepressed 事件的事件,我已经编写
import java.awt.Frame; import java.awt.Graphics; import java.awt.event.MouseAdapter; import java.awt
我正在 Mac OSX 上使用 Eclipse 测试一个简单的 java 图形程序,代码如下: public void mousePressed(MouseEvent e) { System.
我已经安装了所有 p5 并且工作正常,但是每当我开始使用 mousePressed() 它就不起作用(keyPressed 也不起作用)。这是有问题的部分: //press play butt
我正在尝试构建一个简单的应用程序,当您在屏幕上按下/单击时它会播放一首歌曲。一旦您按下/单击,涟漪效应就会发生,同时也会产生视觉效果。 每次按下/单击时都会发生涟漪,但在我的代码中(每次单击都会重新启
我正在尝试访问 mousePressed ProcessingJS 片段中的属性,但得到 undefined。 这是我到目前为止尝试过的: $(document).ready(function(
为下面的函数运行println(game.gameOn) 仍然输出false。 为什么会这样模棱两可? 解决方案是什么? 也许我不能将对象作为参数传递给函数 mousePressed() void m
我创建了几个用于显示值的 JLabels(来自 MySQL),它们必须通过 mousePressed 进行切换,但每次单击后所有值都会覆盖其他值。 在显示新值时需要清除以前的文本吗?也许有比 JLab
我是一名优秀的程序员,十分优秀!