2012-07-12 41 views
0

可能重复:
How to make a JTable non-editable如何使该行可编辑的(假)JTable中

我正在开发使用NetBeans的应用程序。

我已经生成了一个JTable格式的报告。

它工作正常,但行和列是可编辑的,我会让他们是不可编辑的。

+0

通过NetBeans中,你的意思是IDE或平台?无论哪种方式,我们并不真正关心你想做什么,我认为。另外,不要在“java:”前添加问题,标签就是为了这个目的。我把它写在我的头上来重写你的问题。谢谢。 – haylem 2012-07-12 03:42:38

+0

Ah和-1因为有很多重复项(请参阅右侧的“相关”部分),答案是谷歌搜索(并且要求因这两个原因而关闭)。 – haylem 2012-07-12 03:43:44

回答

4

在你的表模型,你可以重写isCellEditable()方法:

public class MyModel extends DefaultTableModel 
{ 
    public MyModel(Object[][] data, Object[] cols) 
    { 
     super(data, cols); 
    } 

    public boolean isCellEditable(int row, int col) 
    { 
     return false; 
    } 
} 
+0

但我使用Netbeans – Jayashri 2012-07-12 03:53:05

+0

@Jayashri我不明白你的意思。 Netbeans是_Java_ IDE。我发布的是一个Java类。你能解释一下你有什么问题吗? – 2012-07-12 12:25:26

+0

@HunterMcMillen:他使用GUI编辑器创建表格,默认模型是硬连线。更多[这里](http://stackoverflow.com/a/11456628/230513)。 – trashgod 2012-07-12 16:48:24

1

您正在使用NetBeans GUI编辑器创建表。在表的Properties > model中,为模型选择所需的原点。例如,您可以添加@猎人的Mymodel到源,并选择Custom code

new MyModel(data, cols) 

Custom Model

+0

@Jayashri:注意无参数构造函数是如何失败的。也可以考虑减少对GUI编辑器的依赖,如[建议](http://stackoverflow.com/a/2561540/230513)所示。 – trashgod 2012-07-12 17:11:11