我在JScrollPane中有一个JTextArea组件,并且文本区域不可编辑。我想使用向上和向下箭头键滚动文本区域(即,按箭头键将文本区域滚动一行)。任何想法如何实现这一目标?
是的,键绑定是必经之路,但是您不一定总是需要创建自己的动作。Swing组件带有您经常可以重用的默认操作。
有关这些操作的完整列表,请参见键绑定。
现在您知道了动作名称,您可以将其绑定到keyStroke:
JScrollBar vertical = scrollPane.getVerticalScrollBar();
InputMap im = vertical.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
im.put(KeyStroke.getKeyStroke("DOWN"), "positiveUnitIncrement");
im.put(KeyStroke.getKeyStroke("UP"), "negativeUnitIncrement");
我有一个内部滚动条的div组件,我想防止向上/向下箭头键在元素聚焦时滚动(鼠标单击元素),因为它们用于其他事件(例如缩放)。 我找到的唯一解决方案是将事件侦听器附加到文档,但是,它禁用所有默认的箭头键事件,例如在输入字段中移动光标。 以下是一个示例(在React中):https://codesandbox.io/s/rsc-live-example-fze6z 如何复制: 用鼠标点击内部div(有
我现在正在实验JavaFX,教自己如何使用箭头键移动文本和项。我做了一个程序,如果按下箭头键,就可以简单地在舞台上移动文本。 我想使一个圆圈移动我的窗格,而不是文本。要使用箭头键移动我的圆圈,我必须做哪些更改?
问题内容: 我有以下要求: 我需要一个可滚动的JTextPane。用户可以在此文本窗格中键入,也可以将用户未键入的文本插入其中。想像即时消息窗口。尽管窗口必须是可滚动的,以允许用户查看以前键入的文本,但插入符号绝不能从其在文本末尾的位置移开。用户输入的任何文本将始终显示在末尾。 在JTextPane中,当用户使用滚动条滚动时,插入标记不会移动。视口已调整。但是,当用户按下向上和向下箭头键时,JTe
我正在使用Java Processing 3制作一个两人坦克游戏。下面是我的炮塔代码。目前我有炮塔的瞄准跟随鼠标在tDir中,我希望能够使用向上和向下箭头移动瞄准从0到90度向上和向下。 我该怎么做呢?多谢了。
我正在尝试用Windowbuilder创建一个小程序,它只需在JPanel中绘制一个红色矩形(称为car1),并通过按箭头键来移动它;为了做到这一点,我将一个改变x位置的方法与箭头相关联,并调用Repait方法,但矩形根本不移动——因此,我可能会把KeyEvent和/或Repait搞砸。 每次按正确的箭头键移动并刷新面板时,我应该怎么做才能使矩形移动并刷新面板?
问题内容: 我正在尝试通过keyEvent向左移动一个圆圈。到目前为止,圆已在窗口上绘制,但不会向左移动!我觉得问题是我在容器中添加了Window()构造函数。在控制台上没有输出告诉我它正在工作。因此,我认为它甚至不会到达KeyEvent类。这是我的代码: 问题答案: 实际上,这是您要添加到的内容,但重点是,因此,当您键入内容时,该内容将转到与类无关的内容。因此,为了克服它,你只需要调用的类的对象