- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Settings
类,它应该提供用于检索设置并将其保存到文件中的接口(interface)。每当我更改输入值(而不是单击“保存”按钮后)时,我的设置都应该更新。这就是为什么我将此方法添加到 Settings
类中:
/** Automatically update setting value as user types.
* @param setting_name What is the name of associated setting?
* @param input JTextComponent (like JTextField) to listen on for events
*/
public void listenOnInput(final String setting_name, final JTextComponent input) {
//Debug output
System.out.println("Settings[\""+setting_name+"\"] automatically updates on input change.");
input.addInputMethodListener(new InputMethodListener() {
@Override
public void inputMethodTextChanged(InputMethodEvent event) {
//Set setting to current value
setSetting(setting_name, input.getText());
}
//This method is dummy, I see no use for it
@Override
public void caretPositionChanged(InputMethodEvent event) {}
});
}
这可能不是完美的设计,但我的应用程序永远不会有复杂的设置,因此我不会在这项任务上投入太多精力。我这样使用它:
JTextField name = new JTextField();
Settings settings = new Settings();
name.setToolTipText("Enter your name");
contentPane.add(name);
settings.listenOnInput("user_name", name);
我的问题是上面的代码不起作用 - 我可以键入或按 Enter,但永远不会调用 inputMethodTextChanged
。
那么获取更新值的正确方法是什么?
最佳答案
在 JTextField
的文档上使用 DocumentListener
:
textField.getDocument().addDocumentListener(...);
然后您可以使用它来检测文本中的任何更改。
关于java - 在 JTextComponent java 中输入时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28739469/
我正在使用 JEditorPane,(当然)当我使用抗锯齿和分数宽度绘制组件时,文本看起来好多了。换句话说: JEditorPane pane = new JEditorPane() { pu
我正在寻找一种方法,以多种字体和样式打印 JTextComponent 文本中的内容。例如:第一个标题具有更大的字体,然后是一个组件中不同样式的一些自定义文本 最佳答案 您可以使用JTextPane来
我需要创建一个从 JTextComponent(实际上是从 JTextPane)派生的类,其中至少有一个 default 键映射是变了。也就是说,在我的特殊 JTextPane 中,我希望“>”键击执
我正在寻找一种解决方案,可以根据用户 UI 内容动态生成文本和图像,然后通过简单的“一键点击”进行打印。 到目前为止,我的意图(经过一些研究)是创建一个 JTextComponent,其内容将根据用户
如何获取 JTextComponent 中第 7 个(例如)字符的位置(以像素为单位)? 最佳答案 Rectangle rectangle = textComponent.modelToView( 7
如何在任何JTextComponent(JTextArea、JTextPane)中显示换行符? 最佳答案 我猜你需要的是http://java-sl.com/showpar.html 它不仅显示标准符
我有名为“startTextBox1”的 jTextField 我使用下面的方法可以通过名称调用它; 在类里面创建 Hashmap。 private HashMap componentMap; 用组件
我正在尝试为我用 Java 开发的文本编辑器实现自动完成功能。为了实现自动完成,我需要已经在编辑器中输入的所有(不同的)单词。 直接的实现是将 JTextComponent 转换为字符串,然后进行标记
当我将焦点放在不可编辑的 JTextField 或 JTextPane 上时,如何消除声音? 每当我将焦点转移到不可编辑的 JTextPane 并按下 Enter 键时,就会播放相当于 Toolkit
通常当您双击一个文本组件时,整个单词都会被选中。 我想禁用对这个单个词的选择,但仍保持单击和拖动以选择它的能力。 示例:“敏捷的棕色狐狸跳过懒惰的狗” 当我从“The”的开头单击并拖动到“dog”的结
我同时使用 JLabel 和 JTextField,并且需要能够在应用程序显示时将我的 double 截断到小数点后两位。 如何执行此截断,最好不要切换到 JFormattedTextFields?
我使用的是 SCO OSR5 操作系统。我的java版本是1.4 在 JTextComponent 中输入数字键盘时,我遇到了一个非常奇怪的问题。 当我使用 VNC 连接时,一切正常。当我查看 VNC
许多环境中原生文本字段的正常行为如下: 带有文本“abcdefg”的文本域。我用鼠标从左到右选择“efg”。插入符号现在位于“g”后面。当我按一次光标左键将插入符号向左移动时,选择被删除并且插入符号位
考虑一个 JFormattedTextField(或者实际上是任何 JTextComponent),其中有一个前缀和一个后缀显示在字段的实际“文本”周围。 例如,双 3.5 将是字符串(通过格式化)“
我有一个 Settings 类,它应该提供用于检索设置并将其保存到文件中的接口(interface)。每当我更改输入值(而不是单击“保存”按钮后)时,我的设置都应该更新。这就是为什么我将此方法添加到
我正在开发一个JTextPane,它的工作方式(几乎)与 stackoverflow 上的标签输入字段完全相同。为此,一旦用户点击 Enter、Tab 或 Space,我就会将文本转换为组件。当然,我
这确实让我很困惑。 我有一个 JTextComponent,我使用 JPopupMenu 和 DefaultEditorKit.Cut\Copy\PasteAction() 添加了右键剪切\复制\粘贴
我是 Java 的新手,尤其是 Swing 库。当我尝试使用记事本演示(来自 JDK 的标准演示)时,我在尝试更改编辑器窗口中的文本时遇到了崩溃。我的示例代码: void Filter(Compone
我最近需要在单个 JScrollPane 的视口(viewport) View 中放置几个组件,其中有一个 JTextPane。 (如果有兴趣,请参阅详情 here)。 我将所有组件(两个 JPa
在 Swing 应用程序中,我使用带有 HTMLDocument 后端的 JTextPane。在某一时刻,我使用 以编程方式将某种占位符插入到文档中 document.insertString(...
我是一名优秀的程序员,十分优秀!