Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在包含阿拉伯字符的情况下,如何强制JTable不反转文本?_Java_Swing_Jtable_Arabic_Idn - Fatal编程技术网

Java 在包含阿拉伯字符的情况下,如何强制JTable不反转文本?

Java 在包含阿拉伯字符的情况下,如何强制JTable不反转文本?,java,swing,jtable,arabic,idn,Java,Swing,Jtable,Arabic,Idn,我有以下案文: 单词 但在我的JTable上显示它时,它看起来是这样的: 单词 在每个JLabel或TextArea或任何其他输入中,它确实看起来像原始文本: 单词 只有在JTable上,我才有这样的问题 我不在乎它是否有意义,是的,我知道阿拉伯语是从右向左写的。我猜Java正在检测它并自动反转它,但我不希望它这样做 注:我不知道وزا是什么意思,实际上我不在乎。这也与本案无关,无论是“单词”还是“单词”都是没有意义的,而“单词”是有意义的,反之亦然 注2:文本(反转或不反转)总是向左对齐(正如

我有以下案文:

单词

但在我的JTable上显示它时,它看起来是这样的:

单词

在每个JLabel或TextArea或任何其他输入中,它确实看起来像原始文本:

单词

只有在JTable上,我才有这样的问题

我不在乎它是否有意义,是的,我知道阿拉伯语是从右向左写的。我猜Java正在检测它并自动反转它,但我不希望它这样做

注:我不知道وزا是什么意思,实际上我不在乎。这也与本案无关,无论是“单词”还是“单词”都是没有意义的,而“单词”是有意义的,反之亦然

注2:文本(反转或不反转)总是向左对齐(正如我预期的那样)


提前感谢。

猜测一下,您默认的
语言环境
给出的
组件方向
与您的其他设置不一致。您可以尝试使用建议的方法之一创建具有首选方向的


附录:
java.text.Bidi
支持双向重新排序;您可能可以使用unicode格式控制代码点,如本文所建议。

要更快获得更好的帮助,请发布一篇文章。我想问题的一部分在于,将从左到右和从右到左的文本样式混合在一起是没有意义的(猜测是……英语旁边的阿拉伯字符?)。你能不能把一个作为工具提示呢?我很想看看显示上述描述的屏幕。你能分享一下吗?你用的是哪个Java版本。JLabel还应该在阿拉伯单词的左边用拉丁字符表示该字符串。@jarnbjo OP就是这么说的;问题似乎出在
JTable
@fge上:也许甚至不同的浏览器对他的问题也有不同的理解。在这里,他的问题是JTable将拉丁词置于阿拉伯词的左侧,而JLabel和TextArea将阿拉伯词置于拉丁词的左侧。我目前正在尝试这一点,但运气不佳。另外,方向不是更关注文本的对齐方式,而不是打印方式吗?无论是单词还是单词,它总是向左对齐(正如我所期望的)。
java.text.Bidi
支持双向重新排序;IIRC,教程示例
TextComponentDemo
使用
DocumentListener
显示一些细节;另请参见此…您应该添加最后一条注释作为答案…这样我就可以将其标记为已解决,因为它确实有效!!非常感谢上帝。我将等待您的具体答复,以将其标记为已解决。@JorgeBlancoSegura:完成!乔治:我现在面临同样的问题,你怎么能找到解决办法呢?你能给我解释一下吗?