Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.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 swing textArea中生成按单词对齐的行?_Java_Swing_Textarea - Fatal编程技术网

如何在java swing textArea中生成按单词对齐的行?

如何在java swing textArea中生成按单词对齐的行?,java,swing,textarea,Java,Swing,Textarea,像这样的台词: id title price quantity sum 001 c++ primer 20.0 5 100.0 id标题价格数量总和 001 C++引物20 20 5 我想让这两行看起来像上面。第一行是头部 下面几行是关于书籍的信息。我试着用空格来完成它 但没那么好。你能帮忙吗?谢谢 使用对象。当然,你必须使用固定宽度的字体。但检测一个适用于所有字符的字符并不是一件小事(或不可能),因为,例如,亚洲字符通

像这样的台词:

id title price quantity sum 001 c++ primer 20.0 5 100.0 id标题价格数量总和 001 C++引物20 20 5 我想让这两行看起来像上面。第一行是头部

下面几行是关于书籍的信息。我试着用空格来完成它


但没那么好。你能帮忙吗?谢谢

使用对象。

当然,你必须使用固定宽度的字体。但检测一个适用于所有字符的字符并不是一件小事(或不可能),因为,例如,亚洲字符通常是两个拉丁字符宽。

我会在这里使用一个带有“text/html”内容类型的JEditorPane,并创建一个html表

更好的选择是使用JTable。有关更多信息和工作示例,请阅读上Swing教程的部分

如果必须使用JTextArea,则需要使用单间距字体

textArea.setFont( new Font("monospaced", Font.PLAIN, 10) );

或每个字符大小固定的任何其他字体。

请参阅此问题:确定不使用表格吗?您也可以向该组件添加编辑或复制等功能。