jjzjj

KeyEvent

全部标签

javascript - 按删除键时无法触发按键事件

我发现删除键不会触发Chrome中的keypress事件,而其他键可以。这个问题在Firefox中没有出现,只是在Chrome中出现,为什么?这是我的代码:document.addEventListener('keypress',function(e){console.log(e);},false); 最佳答案 改用keydown或keyup,它捕获删除键(以及其他keypress不捕获的键,参见http://www.quirksmode.org/js/keys.html)document.addEventListener('key

java - 在 OS X Lion 上的 Java 7 中使用 JTables 对 setValueAt 的虚假调用?

升级到Lion和Java7后,我遇到了JTables问题。当我使用箭头键四处移动选择时,它调用setValueAt()并将空字符串作为编辑值。为了对此进行测试,我创建了一个简单的JFrame,其中包含一个表,并将以下类设置为其模型。publicclassSpyModelextendsAbstractTableModel{publicintgetColumnCount(){return5;}publicintgetRowCount(){return5;}publicObjectgetValueAt(introwIndex,intcolumnIndex){return"";}publicb

java - 我可以使用 Java 的 Robot 类 (Java.awt.robot) 模拟游戏 handle 按钮按下吗?

我正在使用ArduinoUno通过USB或蓝牙将(正版)SNESController连接到计算机。Arduino使用snespadlibrary捕获Controller的按钮按下和释放.它将按钮按下和释放作为字符进行通信(例如,“a”表示按下A,“A”表示释放“A”)。接下来,Java程序使用rxtxlibrary监听串行输出。.最后,Javarobot使用keyPress模拟按键和keyRelease.不幸的是,这种方法有一些缺点。主要问题是键映射。我有点武断地决定哪些按钮将是哪些键盘键。Java似乎没有任何游戏handleKeyEvents.当我说“游戏handleKeyEvent

java - 在未修饰的 JFrames 中支持 Windows-Left 和 Windows-Right

我使用带有自定义标题栏和自定义大小调整器的未修饰JFrame。一切正常,但是当我使JFrame未修饰时,我失去了对Windows左/右键绑定(bind)的支持(似乎它是由Windowsnative实现的)。我想为我的应用程序重新实现此功能。我的问题:我可以在一个按键监听器中检测到是否按下了Windows键,但我无法检测到另一个键(在我的例子中是左/右)是否与Windows键一起按下(InputEvent中没有修饰符WINDOWS_MASK_DOWN)。可能有人知道解决方法?这是我的代码:importjava.awt.BorderLayout;importjava.awt.event.K

java - 将随机迷宫生成合并到我的游戏中(Java)

我目前正在用Java制作迷宫解谜游戏,但遇到了麻烦。我能找到的所有随机迷宫生成算法都以一种我无法弄清楚如何在我当前代码中实现的方式输出。我正在考虑使用DepthFirstSearch,RecursiveBacktracker,或Prim'sAlgorithm,因为我认为它们是最容易实现的,同时还能产生好的迷宫。使用与我当前程序一起使用的那些算法之一的工作用途是什么?这是我的游戏类:(也请随时指出任何不好的做法,我是Java的新手)packagegame;importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicc

java - 自定义按键事件

我如何发送自定义SWT键事件,以便在不进行任何转换的情况下键入准确的文字字符?我们正在制作一个允许多种可能布局的自定义屏幕图形键盘——QWERTY是主要布局,但其他几种布局也在计划中,包括视觉上模拟iPhone键盘布局的布局或其他相对于电脑。我希望能够将我选择的任意字符作为事件发送,这样它就会导致键入该确切字符。但是,每当我发送带有给定字符的事件时,SWT似乎会根据系统的键盘设置和状态自动解释和转换它,将其更改为大写/小写或使用移位符号,具体取决于是否按下了shift键(例如实际键盘上的真实键)。例如,通过键事件传递字符“T”将导致“t”或“T”,具体取决于shift键。它与“4”字符

java - 如何获取在 JVM 之外运行的任何 Linux/Windows 应用程序的屏幕截图

是否可以使用Java获取Java外部应用程序的屏幕截图,比如VLC/WindowsMediaPlayer,将其存储为Image对象,然后将其显示在JLabel或类似性质的东西中?有人知道这是否可行吗?如果可行,有人知道如何做吗?注意:我只需要了解如何获取屏幕截图并将其存储为某种形式的Image对象。之后我可以使用、操作它、显示它等等。 最佳答案 这是Windows的答案(不确定alt+printScr是否适用于linux:P)我想有一种方法可以实现这一点1。使用Robot类触发alt+printScreen命令(这会将Activit

java - 在另一个图像的点绘制图像

因此,我正在创建一个侧边滚动条,并尝试在另一张图片的点上绘制一张图片。我有5000x500的背景图片,假设我想在500、50的背景图片处绘制一张25x25的图片。我该怎么做?到目前为止我已经尝试过:Coinsc=newCoins(img.getWidth(this)-4500,img.getHeight(this)-250);但这只是在帧的500、50处绘制它,因此当我向右滚动时它会在图像上“移动”。我希望在向右滚动一次后,硬币图像在图像的500,50处绘制,仍然是帧的495,50。我也可以使用背景图像的getGraphics并将较小的图像绘制到它上面,但我认为因为我在创建对象期间设置

java - 仅使用合理的键在 JTable 单元格中开始编辑

我认为JTable组件应该更好地过滤将开始编辑的键。我的意思是,对于当前的实现,如果您在可编辑的单元格中键入DEL、Ctrl+Shift+DEL、F5、F7,单元格编辑器就会出现。在我看来,使用这些键启动单元格编辑器对于最终用户来说非常不直观。此外,还有另一个问题:JTable不知道表单中定义的其他可能的键绑定(bind)。如果您为窗体上的按钮定义了键绑定(bind)Ctrl+Shift+C,如果您在JTable中键入此组合键,表格将开始编辑,接下来将调用您的按钮键绑定(bind)操作。我认为应该有一种简单的方法来防止这种情况发生,而不是在您的表键绑定(bind)映射中禁用所有那些已经

java - 当我重绘太多时停止 Swing 闪烁

我正在制作一个带有tilemap的角色扮演游戏。为了生成tilemap,我循环遍历了一个二维数组,但这意味着当我重新绘制时,我每次都必须这样做。如果我重绘太多,屏幕会闪烁,我该如何停止。packagesexyCyborgFromAnOtherDimension;importjava.awt.Color;importjava.awt.Graphics;importjava.awt.Graphics2D;importjava.awt.RenderingHints;importjava.awt.event.KeyAdapter;importjava.awt.event.KeyEvent;im