问题标签 [jformattedtextfield]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3242 浏览

java - 让 JSpinner 只读取数字但也检测退格

我正在尝试制作一个只接受数字但我也希望它读取/响应退格的 JSpinner。

上面的代码只能生成数字,但这不允许我退格。我在这个网站上找到了一些示例,但它们是为 C 编写的。

0 投票
1 回答
3071 浏览

java - JFormattedTextfield 仅在按下回车时验证

对于一项任务,我需要创建一个具有以下行为的 JFormattedTextField:

  • 如果值被编辑并且不等于最后验证的值,则背景必须变为黄色。
  • 价值验证可随时进行
  • 如果焦点丢失,则不会发生任何事情(如果背景为黄色,则应保持黄色,...)
  • 按下 Enter 时应采取措施

我似乎无法找到正确的侦听器组合来完成此操作。我尝试使用KeyAdapter,但这给了我非常丑陋的代码,仅适用于 80% InputVerifierPropertyChangeListener

这应该怎么做?

编辑:我写了一个小例子:

这几乎可以满足我想要的一切。但问题是 ENTER 键永远不会被抓住。我认为它在到达我的 KeyListener 之前就被消耗掉了,但是我怎样才能防止这种情况呢?

即使可以避免这种情况,我仍然觉得应该更清楚为什么要完成上面的代码。

0 投票
0 回答
429 浏览

java - JFormattedTextField 文本消失

如果焦点在该 JFormattedTextField 上丢失,则文本消失。我不知道为什么......我希望你们中的任何人都会看到我的错误。看来,方法 classduration 不会完成,或者没有被调用.....虽然我没有得到任何异常。这对我来说很奇怪。

和classdurarion:

//编辑:格式化的文本字段出现并且可见等。只是文本消失了

我应该发布整个代码(它很多......)?

0 投票
1 回答
157 浏览

java - 如何仅在第二位数字之后检查月份的正确性?

我需要 JFormattedTextField 来格式化日期(“dd.MM.yy”)。代码:

问题是:例如,如果日期是“11/06/12”,如果我尝试在月份输入 12,我不能这样做,因为当我输入 1 时,它会将月份理解为 16 并且不给我输入下一个数字。我需要当我在月份位置键入例如 12 时,JFormattedTextField 将仅在我键入第二个数字后检查月份的正确性,如果不正确,月份将返回到以前的值。我该如何解决这个问题?

0 投票
2 回答
1859 浏览

java - JFormattedTextField 中的严格 24 小时制时间

我正在尝试创建一个只接受 24 小时时间的 JFormattedTextField。

我非常接近解决方案,但有一种情况下以下代码示例不起作用。

如果您输入时间“222”并从字段中更改焦点,则时间将更正为“2202”。我希望它只接受完整的 4 位数 24 小时时间。这段代码几乎在所有情况下都能按我的意愿工作,除了我刚才提到的那个。有什么建议么?

0 投票
2 回答
1292 浏览

java - 为 JFormattedTextField 分配一个浮点数

我正在使用 swing 编写一个带有 gui 的简单贷款计算器。我使用 DecimalFormat 确保以我的指定格式 ####.## 为我的 JFormattedTextField 捕获输入。

当用户按下我的“计算”按钮时,它会计算并显示monthlyPaymentField。

为了测试我的程序是否能正确显示它,我尝试为monthlyPaymentField 分配12.22 的值,但我收到一个错误,提示应该将monthlyPaymentField 声明为double。

我该如何解决这个问题,以便我仍然可以将我的 JFormattedTextField 与 DecimalFormat 一起使用,但仍然可以在我的monthlyPaymentField 上显示一个浮点数?

0 投票
1 回答
785 浏览

java - 到 JFormattedTextField 的 setValue 不显示在 GUI 上

我正在使用 swing 编写一个带有 gui 的简单贷款计算器。我正在使用 DecimalFormat 来确保使用 JFormattedTextField 正确格式化。

我遇到的问题是,当我尝试为loanAmountField 分配一个值时,它不会在我的GUI 的JFormattedTextField 上更新它。

如何在我的 GUI JFormattedTextField 上显示新值?

0 投票
2 回答
6205 浏览

java - 使用 JFormattedText 的 getValue 在另一个 JFormattedText 字段中显示

我有一个程序,我根据选择的单选按钮计算 2 个变量中的 1 个。我正在尝试使用getValue从一个JFormattedText字段中获取一个值并将其显示在另一个JFormattedText字段上(最终我将使用该数字进行一些计算)。

我的问题出现在下面的代码片段中:

在这里,我试图将结果分配getValue给结果。我查看了 Oracle 文档,似乎获取值的代码很简单interestRateField.getValue();,但当我尝试这个时,我收到一条错误消息,Can't convert object to double所以我添加floatValue()并强制转换它以消除错误。

当我按下计算时,它不会显示来自interestRateFieldin的输入monthlyPaymentField

如何获得我的价值(通过JFormattedTextField使用DecimalFormat) usinggetValue然后以不同的方式显示它JFormattedTextField

0 投票
3 回答
446 浏览

java - 有没有办法在 jtextfield 中放置一个冒号,这样它就不能被删除?

我希望用户输入时间,比如 12:00,但我需要弄清楚一些事情,我很迷茫。

  1. 我可以将文本限制为 5 个字符吗?如何?
  2. 我可以在代码中嵌入一个冒号,以便用户无法删除它吗?
  3. 最后,我可以拿那个代码并验证它只是数字吗(当然忽略冒号)
0 投票
2 回答
110 浏览

java - 当我删除 Jtextfield 中的文本时没有发生 lostFocusEvent?

嗨,我已经实现了一个简单的 focusListener 方法并向它注册了两个 jTextField。该方法的作用是将其中的数字相加并显示在 JLabel 中。如果我在其中输入“2”,它会正确更新给我 4。但是,如果我之后删除 2,即使我单击其他地方也不会触发 focusLost 事件。如果我在 JTextField 中输入 0,则 focusLost 事件将正常发生。为什么呢?谢谢!