我想确保JTextField中始终有一个正整数。例如,在创建GUI时,JTextField当前有一个默认的“1”,我希望它能够在用户决定点击backspace时自动将文本设置为“0”,而不是变成一个空文本字段。这是因为文本字段还有一个监听器,它调用一个方法来根据这个数字更新GUI的另一部分。
我对DocumentFilter还很陌生,所以我甚至不确定自己的方向是否正确,但以下是我目前掌握的信息:
public class IntegerFilter extends DocumentFilter {
public void remove(FilterBypass fb, int offs,
int len) throws BadLocationException {
if (offs == 0) {
// I'm trying to think if there's something I can put here
} else {
super.remove(fb, offs, len);
}
}
public void replace(FilterBypass fb, int offs, int len, String str,
AttributeSet a) throws BadLocationException {
String text = fb.getDocument().getText(0, fb.getDocument().getLength());
text += str;
if (text.matches("\\d+")) {
super.replace(fb, offs, len, str, a);
}
}
}
到目前为止,我正在覆盖过滤器的删除()方法并检查用户正在删除的数字是否是最后一个。如果不是,则删除正常工作,但如果是这样,则还没有发生任何事情。
我认为我卡住的地方是我想在删除方法中调用替换方法,但我没有AteviteSet可以使用。
//我在想是否有什么东西可以放在这里
首先,你的基本逻辑是错误的。你不能只检查偏移量。文本字段中可能有5个数字,并且只是试图删除第一个数字。
你想做的是:
super.remove(...)
从文档中删除数字我没有可用的属性集。
对于JTextField,AttributeSet
将为空。
我想将我的IDE连接到OracleSQLDeveloper。因此我必须使用这行代码: 要输入密码,我使用: 我想知道如何将这个JPasswordField转换成字符串,这样我就可以使用代码I的“Connect”行(这一行仅适用于字符串) 编辑:这是输入密码的代码。我在stackoverflow上找到了它:
问题内容: 我知道它可以通过使用SQL来工作 但是我不能这样,我不能在SQL中硬编码’EMPTY_CLOB()’。我使用了如下方式: 但这没有用。Clob并未更新为空字符串,但仍存储为先前值。 任何人都可以帮助我吗? 问题答案: 正如我在另一个问题中已经提到的:以我的经验,getClob()和setClob()无法正常工作。 使用来代替: 这样,您还可以在更新之前删除不必要的SELECT,这也将提
问题内容: 我有一个约有100列的遗留表(90%可为空)。在这90列中,我要删除所有空字符串并将其设置为null。我知道我可以: 但这很乏味且容易出错。必须在整个桌子上做到这一点吗? 问题答案: 这仍然是手动完成的,但比您要痛苦的要少一些,因为它不需要您为每一列发送查询。除非您想编写脚本麻烦,否则在执行此类操作时必须忍受一定的痛苦。 编辑:增加了小号
我正在从Reddit API检索评论。该模型是线程化的,这样每个评论都可以在内部有一个评论列表,名为回复。下面是一个JSON响应的示例: 这是我如何用POJO建模的。上面的回复将被视为评论列表。 请注意底层CommentData POJO如何引用另一个名为“回复”的CommentList。 这个模型一直工作到GSON到达最后一个没有回复的子CommentData。API提供的不是空字符串,而是空字
输入变量是一个字符串,例如我想将其格式化为浮动,这样我的输出将是 我检查了NumberFormat类以完成任务,但无法在最后将变量格式化为浮动 就目前而言,我使用以下方法正确获得字符串结果: 如何返回而不是?
我被困在这个问题上,我不知道发生了什么。我试图使用Kafka流来写一个主题的日志。在另一端,我有Kafka连接将每个条目输入MySQL。所以,基本上我需要的是一个Kafka流程序,它将主题读取为字符串,并将其解析为Avro格式,然后将其输入不同的主题。 这是我写的代码: 以下是我得到空指针异常后的输出: 主题sqlin包含几个由数字和两个单词组成的消息。注意两行打印:函数得到一条消息,并在捕获空指