阅读alt代码JTextArea

Mag*_*use 6 java ascii

我有一个条形码,上面写着:"SerialNumber ALT09ProductNumber",其中ALT09= Tab.

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

我怎么得到JTextArea接受ALT09Tab(或在位置替代拆分).

Ale*_*lex 0

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

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

SerialNumber=ProductNumber
Run Code Online (Sandbox Code Playgroud)

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