2010-12-07 11 views
1

プログラムでのみ編集および更新されるJTableを実装したいと思います。私はユーザーインタラクションを有効にしたくない。A Jtableの実装

まず、入力は文字列要素の配列(文字列分割から配列を埋めた後)になります。

次に、配列データでフィールドを設定します。

テーブル名の保存には、列名はどのように保存されますか?

インタラクションが必要ない場合はTableModelを実装する必要がありますか?

答えて

3

How to Use TablesのJavaのマニュアルをよくお読みください。あなたが興味を持っているようだ

もの:

isCellEditable() - それはfalseを返したユーザーが任意のセルを編集できないことを意味します。 getColumnName() - 配列または文字列のリストで名前を検索します。

+0

+1キーがisCellEditableをオーバーライドしているため、ユーザーはデータを変更できません。 – camickr

0

はい、モデルは便利ですが、必要ではありません(また、DefaultTableModel)。

実際にはちょうどいいコンストラクタを使用して静的データとのJTableを埋めることができます:

public JTable(Object[][] rowData, Object[] columnNames) 

ができますが、テーブル内のデータを制御することはできません。

モデルは編集機能とのやりとりを提供するだけではなく、どちらかを読むためにテーブルのデータソースを提供するために使用されるものではありません。

+0

いいね。私はモデルを実装するためにデータソースが必要になります。だから、ステップをクリアするだけです。 Jtableを作成し、データソースを保持するモデルを作成します。これらはどうつながっていますか?また、[] []で名前を検索して配列のインデックスを返すメソッドもあります。次に、この配列にインデックスで値を入力します。これらの方法はどこで定義されるべきですか?モデルの外か?ありがとう – jarryd

1

編集可能性について:JXTableを使用してください - 階層化されたプログラム設定コントロールをサポートしています。狭く、カラム単位およびテーブル具体的には、

  • はサポートしています(つまり、読み取り専用にする)
  • 点常にセルの編集可能なプロパティを(つまり、セルが編集可能でない場合table.setValueAtは何もしないで)
関連する問題