gpt4 book ai didi

java - 在 keyReleased() 事件后引入延迟

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:35:52 25 4
gpt4 key购买 nike

所以,我正在使用 swing,我需要找到一个干净的(非 CPU 占用方式)来在文本字段上引入延迟。基本上,用户将在该字段中输入一个数字,keyReleased() 事件会检查输入是否符合一些参数,然后将值分配给程序中的数据存储元素。如果数据无效,它会显示一条消息。由于每次他们键入一个字母时都会调用该例程(除非他们键入的速度非常快),因此输入过程变得非常烦人(因为通常一两个字符的数据不符合允许的参数)。

我试过为它设置一个计时器对象和一个计时器任务,但是它似乎工作得不太好(因为它延迟了程序运行的线程)。等待数据达到一定长度的选项也是不可能的,因为(如前所述)输入的长度可能会有所不同。

有人有什么想法吗?谢谢!

最佳答案

我经常做这样的事情,我有两个建议。

处理此问题的标准方法是使用 InputVerifier 类。然而,这仅在输入组件失去焦点时才起作用——它旨在防止用户在输入字段无效时导航出输入字段,但直到那时它才会检查。

我这样做的另一种方法是检查每次击键的有效性,但在无效时不显示消息。而是使用颜色来指示有效性 - 例如无效时将其着色为红色,有效时将其着色为黑色。这几乎不像消息那样具有侵扰性。您可以使用工具提示提供更详细的反馈。

您也可以结合使用这些方法。

关于java - 在 keyReleased() 事件后引入延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2503131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com