2010-12-03 63 views
0

我正在设计一个屏幕上的表格来填充,我认为将它作为一个文本区域集合粘在一起是有意义的。我在JTextArea的文档中注意到文本区域可以细分为行和列,但我找不到任何处理将文本直接放置在文本区域的任何特定行/列单元格中的方法。Java JTextArea问题

是否有这样的方法,或者是否有替代文本组件可以更好地用于此目的?

在此先感谢您的任何见解。

约翰·多纳

回答

0

一个有点hackish,但你可以在你的实际内容之前插入(行-1)和换行符(列1)空字符。当然,这只适用于以前空的文本区域。

但是,您可以扩展该方法,以便只在需要时插入字符,否则只计算已存在的字符。也就是说,要连续跳过第一行第一行。然后在该行中,您跳过第一列-1个字符。

如果文本区域中没有足够的换行符或字符,则在文本的末尾添加更多换行符或字符。

但是,如果您的文本内容中包含换行符,它会变得棘手。

这是可行的,但它会是丑陋的。

1

如果你想有一个表,有JTable,但它是一个有点复杂。 (Here is a tutorial)或者你可以把你的JTextAreas成布局如GridLayout

+0

我建议链接到更新的API版本。 – jzd 2010-12-03 18:19:03

+1

@jzd - 谢谢 - 改变了 – 2010-12-03 18:20:14

0

行和列值仅用于给文本区域一个首选大小。

我没有看到在创建表单时尝试在特定行设置文本的要点。一般情况下,表单将设计为标签/文本字段对,以便用户知道输入文本的位置。

如果您要输出文本区域,那么当您想要在不同行上显示文本时,只需添加新行。

强制文本区域能够在给定的行/列插入文本绝对不是它打算使用的方式。

我不明白真正的要求,所以我不能提出任何其他建议。