2016-04-28 60 views
1

我有一个四列滚动表,最后一列是可编辑的。用户可以输入文本,我想限制用户只输入100个字符。一旦达到限制,用户不应该能够输入更多文本。 请建议我如何解决这个问题。 谢谢。Swing ScrollTable问题

+1

*“Swing ScrollTable ..”* Swing包中没有这种东西。链接到Java文档,并请更多努力解决问题。 –

回答

2

JTable使用编辑器编辑单元格中的文本。默认编辑器是JTextField,所以您需要自定义文本字段以将文本限制为100个字符。

阅读Swing教程Implementing a DocumentFilter中有关工作代码的部分。

那么你需要创建编辑器并将其添加到表中。基本的代码会是这样的:

JTextField textField = new JTextField(); 
//add the DocumentFilter to the Document 
DefaultCellEditor dce = new DefaultCellEditor(textField); 
table.getColumnModel().getColumn(???).setCellEditor(dce); 

阅读从How to Use Tables Swing的教程部分,了解使用表格和编辑的详细信息。