我正在設計一個屏幕上的表格來填充,我認爲將它作爲一個文本區域集合粘在一起是有意義的。我在JTextArea的文檔中注意到文本區域可以細分爲行和列,但我找不到任何處理將文本直接放置在文本區域的任何特定行/列單元格中的方法。Java JTextArea問題
是否有這樣的方法,或者是否有替代文本組件可以更好地用於此目的?
在此先感謝您的任何見解。
約翰·多納
我正在設計一個屏幕上的表格來填充,我認爲將它作爲一個文本區域集合粘在一起是有意義的。我在JTextArea的文檔中注意到文本區域可以細分爲行和列,但我找不到任何處理將文本直接放置在文本區域的任何特定行/列單元格中的方法。Java JTextArea問題
是否有這樣的方法,或者是否有替代文本組件可以更好地用於此目的?
在此先感謝您的任何見解。
約翰·多納
一個有點hackish,但你可以在你的實際內容之前插入(行-1)和換行符(列1)空字符。當然,這隻適用於以前空的文本區域。
但是,您可以擴展該方法,以便只在需要時插入字符,否則只計算已存在的字符。也就是說,要連續跳過第一行第一行。然後在該行中,您跳過第一列-1個字符。
如果文本區域中沒有足夠的換行符或字符,則在文本的末尾添加更多換行符或字符。
但是,如果您的文本內容中包含換行符,它會變得棘手。
這是可行的,但它會是醜陋的。
如果你想有一個表,有JTable,但它是一個有點複雜。 (Here is a tutorial)或者你可以把你的JTextAreas成佈局如GridLayout
行和列值僅用於給文本區域一個首選大小。
我沒有看到在創建表單時嘗試在特定行設置文本的要點。一般情況下,表單將設計爲標籤/文本字段對,以便用戶知道輸入文本的位置。
如果您要輸出文本區域,那麼當您想要在不同行上顯示文本時,只需添加新行。
強制文本區域能夠在給定的行/列插入文本絕對不是它打算使用的方式。
我不明白真正的要求,所以我不能提出任何其他建議。
我建議鏈接到更新的API版本。 – jzd 2010-12-03 18:19:03
@jzd - 謝謝 - 改變了 – 2010-12-03 18:20:14