- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在名为 test2 的包中名为 Test2.java 的文件中有以下代码;
package test2;
import java.io.IOException;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class Test2 {
public static void main(String[] args) {
int k = 7;
while(true) {
try {
JFrame mainWindow = new HtmlWindow(k);
} catch(UnsupportedOperationException numberChosen) {
JOptionPane.showInternalMessageDialog(null, "information",
"You clicked on number " + numberChosen,
JOptionPane.INFORMATION_MESSAGE);
Integer l = new Integer("0" + numberChosen);
}
}
}
}
我在同一包中名为 HtmlWindow 的文件中有以下代码;
package test2;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.IOException;
import javax.swing.JFrame;
import javax.swing.JLabel;
class HtmlWindow extends JFrame implements MouseListener {
public HtmlWindow(int k) throws UnsupportedOperationException {
super("blah");
setSize(150, 200);
Container content = getContentPane();
content.setLayout(new FlowLayout());
JLabel[] coloredLabel = new JLabel[k];
String[] labelText = new String[k];
for(int i=0; i<=k-1; i++) {
labelText[i] = "<html><img src = "
+ "\"http://images.nycsubway.org/bullets/lines/"
+ (i+1)
+ ".GIF\">"
+ "</html>";
coloredLabel[i] = new JLabel(labelText[i]);
coloredLabel[i].setName((i + 1) + " ");
coloredLabel[i].addMouseListener(this);
addMouseListener(this);
content.add(coloredLabel[i]);
}
this.setVisible(true);
while(true) {
}
}
@Override
public void mousePressed(MouseEvent me) {
}
@Override
public void mouseReleased(MouseEvent me) {
}
@Override
public void mouseEntered(MouseEvent me) {
}
@Override
public void mouseExited(MouseEvent me) {
}
@Override
public void mouseClicked(MouseEvent me) {
throw new UnsupportedOperationException(me.getComponent().getName());
}
}
当我运行此命令时,会按预期出现一个窗口,其中包含数字图片,但是当我单击其中任何一个时,不会捕获抛出的异常。为什么是这样?指针应该围绕 HTMLWindow 构造函数中的“while”部分,因此仍然位于“try”部分内,因此应该被捕获。我的猜测是,这是因为 mouseClicked 部分不在 HTMLWindow 构造函数内,异常以某种方式抛出到 try block 之外?
如果这不是从 GUI 获取信息返回原始程序的最佳方式,那么什么才是呢?我不认为这是通过使用“返回”,因为
旁白 - 当我移动数字等时,我并不特别希望程序执行任何操作,只需单击它们即可。那么为什么我需要 mousePressed block 等等?如果没有它们,程序将无法编译。像这样将它们留空可以吗?
最佳答案
The pointer should be going around the "while" section in the HTMLWindow constructor, and thus still be within the "try" section, and so should be caught.
它仍然在 try
block 内 - 但显然 while
循环不会抛出异常,是吗?
您似乎假设:
我不知道第一个项目符号,但第二个项目符号肯定是不正确的。 (紧密的 while(true)
循环永远都不是正确的解决方案......)
If this is not the best way to get information from the GUI back to the original programme, what is?
目前还不清楚你想要实现什么,但通常 GUI 是“面向事件的” - 所以也许你应该考虑一种方法,使 GUI 公开某种监听器,其他代码可以将其挂接到其中.
Aside - I don't particularly want the programme to do anything when I move over the numbers etc, just click on them. So why do I need the mousePressed blocks and so on? The programme won't compile without them. Is it okay to just leave them blank like that?
不要直接实现 MouseListener
,而是使用适配器类之一(例如 MouseAdapter
),它实现相关接口(interface),为您提供无操作实现。但显然你不能让你的窗口扩展 MouseAdapter
和 JFrame
- 你应该在这里有两个单独的类。
关于java - 使用 throw/catch 的鼠标监听器 (java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11763388/
我正在尝试为我的网站创建一个功能,允许用户使用 mousemove 和 touchmove 事件水平滚动 div 内容(类似于 Apple AppStore any app Screenshots s
我有固定的侧边栏导航栏,它在悬停时工作,但我想通过单击折叠按钮打开第一个菜单。类似于悬停在菜单 1 上的工作方式。我已经尝试了以下方法。 jsfiddle Demo $(document).on('c
Mouse.Synchronize() 在 .Net 中有什么作用? MSDN 说它“强制鼠标重新同步” 最佳答案 只是我的假设: Stylus 中存在类似的方法类别:Stylus.Synchroni
有没有什么办法可以同时使用鼠标, pygame.mouse.set_visible(False) 已激活。当前鼠标仅在尝试使用时返回右下坐标。需要在隐藏鼠标时能够获得正确的坐标。 在他们的 docum
我有一个缺少数据的数据库。我需要估算数据(我使用的是鼠标),然后根据原始列创建新列(使用估算数据)。我需要使用这些新列进行统计分析。 具体来说,我的参与者使用李克特 7 分量表填写了几份问卷。有些人没
我正在编写一个与电脑交互的机器人。简而言之,我所做的是: -截取屏幕截图- 在此屏幕截图上识别对象(使用 cv2 matchTemplate) -使用找到的位置进行一些鼠标操作(例如:将鼠标指针移动到
我的程序是一个文本游戏,它使用 WindowsForm 上的文本框模拟控制台输出。我试图实现的一个功能是通过单击一个按钮,它将以一定的速度输出到 TextBox,这是通过这种方法实现的 atm: pu
我遇到了一个问题。如果有任何帮助,我将不胜感激。 我正在尝试从玩家位置射击到鼠标点击位置。代码没有给我任何错误,根据我的逻辑,它应该可以工作,但它没有 它创建了项目符号对象,仅此而已。 //Bulle
给定一个带蓝牙的 Windows Mobile 6.1 智能手机,我想将它注册为鼠标。 基本上我现在做的: 使用 Guid {00001124-0000-1000-8000-00805f9b34fb}
我有一个关于在 JavaFX 中实现鼠标拖动事件的正确方法的问题。 我的 playGame() 方法当前使用 onMouseClicked,但这只是一个占位符 理想情况下,我希望“飞盘”沿着鼠标拖动的
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我目前正在使用 Windows 的 RawInput API 来访问键盘和鼠标输入。我有点困惑的一件事是,当我将鼠标注册为 RawInputDevice 时,我无法移动我的 Win32 窗口或使用那里
我想在我的网站浏览器窗口中 move 鼠标,如下所示:www.lmsify.com。我怎样才能做到这一点?(javascript、flash、activex) 问候,丽莎M 最佳答案 他们并没有真正
我想要一个动画。我是后端开发人员,但我必须使用 jquery 创建动画。 动画、背景和元素位置随鼠标移动而变化。 类似于http://www.kennedyandoswald.com/#!/premi
如何将鼠标“锁定”到某个 OpenGL 窗口。有点像在 Minecraft 中是如何完成的。GameDev 是一个更好的询问地点吗? 最佳答案 正如 Robert 在评论中所说,OpenGL 实际上并
我正在尝试实现一个颜色选择器,它从屏幕上各处的像素中获取颜色。为此,我计划使用全局鼠标 Hook 来监听 WM_MOUSEMOVE,以便在鼠标四处移动时更新颜色,并监听鼠标点击以确认 (WM_LBUT
如何使用 Java 和 JNA(Java native 访问)与 Windows API 交互?。我试图通过在鼠标输入流上排队鼠标事件来让鼠标做某事,并且代码有效,因为 SendInput(...)
我想用 C++ 脚本 move 鼠标光标。我在 Parallels 中的 Windows 7 中使用 Visual C++ 2010 Express,并创建了一个控制台应用程序。 我知道 SetCur
我有一些关于 WH_MOUSE 的问题。根据我的阅读,通过将钩子(Hook)放入 DLL 中,它会注入(inject)进程。这是否意味着捕获鼠标也适用于我的桌面、菜单启动等?那么应用程序的标题栏呢?我
如何为多只鼠标显示另一个光标? 我有两个 TMemos,两个可以输入各自 TMemo 的键盘,2 个鼠标,我需要 2 个光标。 如果假设的话,我已经可以检测出哪只鼠标是哪只了。我怎样才能让我自己的光标
我是一名优秀的程序员,十分优秀!