java - 阅读替代代码 JTextArea

标签 java ascii

我有一个条形码,上面写着: “序列号ALT09产品编号” 其中 ALT09 = Tab

我将数字读入 JTextArea,如果我用键盘上的 Tab 键手动输入数字,我会得到一个有效的输入,然后我可以 text.trim().split ("\t"); 获取有效输入以获取相应的序列号和产品编号。但是当读取发送ALT09的条码时,它什么也读不到。

如何让 JTextArea 接受 ALT09 作为 Tab(或作为位置的替代拆分)。

最佳答案

JTextArea 根本没有获取 Tab。 Tab 被整个 GUI 界面打断以切换到下一个可编辑字段。当然你可以改变这个规则,拦截父容器上的 Tab 并强制它将它发送到子 JTextArea 然后你甚至可以为 KeyPressed 事件编写你的 won 方法并将 Tab 字符插入文本但这是一个很好的方法,因为它改变了用户经验。用户希望 Tab 转到下一个字段,但是对于这个特定的文本区域,您说它应该是文本的分隔符?另一个原因 - Tab 与 Space 类似 - 因此在用户体验中不清楚输入是否正确。

要避免所有这些麻烦,为什么不采取简单的方法:

SerialNumber=ProductNumber

它清晰、可见、可预测、可理解,最重要的是 - 不需要您的问题 ;)

关于java - 阅读替代代码 JTextArea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30119468/

相关文章:

c++ - 将字符转换为 ASCII 返回的数字太大

java - 传输数据输出流

java - 二叉搜索树的高度

java - libjna-jni、libjna-java 库和 Java 之间的相互关系是什么

java - 如何在 JUnit 5 中使用少量枚举创建参数化测试?

iphone - NSString 中的原始字节使用什么编码

C++ ASCII 游戏控制台屏幕闪烁

android - TradeMark(TM) 标志在设备上显示为问号

Verilog 中的 ASCII 到整数转换

java - 如何在Android中读取HttpResponse?