Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

defaultTableModel.addColumn("列名1");が解決できません

EclipseにVEを入れました。
そして、テーブルにテーブルモデルを追加しました。

するとJava BeansビューにdefaultTableModelが表示されると本に書いているのですが、
TableModelが追加されていないように感じます。

それは、Java BeansビューにdefaultTableModelが表示されていないからです。

そして、defaultTableModel.addColumn("列名1");とコードに追加すると、
「defaultTableModelが解決でません」とエラーが出ます。

ただし、jTableのプロパティのModelには、defaultTableModelが追加されており、
VEが自動的に適用しているようです。

なぜ、defaultTableModel.addColumn("列名1");が解決できませんか?
ご教授お願いしますmm

17

回答

6309

閲覧

17件の回答

評価

0

その「defaultTabeleModel」は、ちゃんと宣言されてるの?

評価

0

ありがとうござます。

宣言とはなんでしょう・・・

importはされています。
しかし、JavaBeansビューに表示されていないので、なにかがおかしいのだと思います。

http://file.akisute.blog.shinobi.jp/TO000032.JPG

このサイトにある、JFrame.javaに表示されてる

  (豆)
defaultTableModel

がない上に、JavaBeansビューのツリー構造にも表示されていません。

しかし、jTableのプロパティには>model (defaultTableModel)と表示されてます。

〜ソース〜

import javax.swing.table.DefaultTableModel;

・・・

private JTable getJTable(){
  if(jTable == null){
    try{
      jTable = new JTable();
      jTable.setModel(new DefaultTableModel());
    }catch (java.lang.Throwable e){
    }
  defaultTableModel.addColumn("カラム名1");
  }
  return jTable;
}

×defalutTableModelを解決できません

さっぱりです・・・

評価

0

>宣言とはなんでしょう・・・
基本からやれ。いきなり応用編に入るな。

評価

0

テーブルに見出しを付けるプログラムは、基本だと思います。
本も基本編ですし・・

評価

0

で、Javaプログラミングの経験はどの程度なの?
俺に言わせれば、基本的な方から、

1.Java初級
2.Java応用
3.Swing初級 <-- 1.と2.はもちろん履修済みだよね!

てな感じなんだけど。

評価

0

javaの経験は素人です。
ただし、Java tutorialを読みました。

あと本は、やさしいJavaとやさしいJava活用編を読みました。
独習Javaも読みました。
Javaデザインパターン徹底攻略はいま途中です。

いま、Eclipse+VisualEditorによるJavaプログラミングをやってます。
これが終わったら、Junitをやっていきたいと思っています。

言語仕様とかはもういいです・・・

評価

0

素人や初心者にデザインパターンなんか早い。
それは、とりあえず動くものを作るのに不自由はしない経験者が、
より優れた指針を身につけるために勉強するものだ。

>これが終わったら、Junitをやっていきたいと思っています。

なんか、見栄えはスゴイが、
当面は必要ないものばかりそろえてるな。
まあ、俺んちでも、
大きな工具箱には立派な道具がぎっちり詰まってるのに、
組んでもいない電子工作キットとか
電子ブロックがホコリをかぶっていているが。orz

>言語仕様とかはもういいです・・・

プログラミングをやろうってのに、
言語仕様抜きでなにをどうしようってのさ。

評価

0

ありがとうござます。

>当面は必要ないものばかりそろえてる

確かにww
それにしても、怒られっぱなしですね・・

実践的に学んでいきたいと思ってるんですよね。
何も出来ませんが・・

評価

0

>ただし、Java tutorialを読みました。
>あと本は、やさしいJavaとやさしいJava活用編を読みました。
>独習Javaも読みました。

読んだだけで、理解できてないんじゃないかな。
先走りすぎと言うか。

少し落ち着いて勉強する事をオススメしますよ。
VE無くたって、GUIは書けるし、
VEがないと書けなかったら、それって理解できてないってことだから。

評価

0

理解するために、プログラムを組みながら学びたいと思ってまして・・

それと、宣言を理解でき、テーブルに見出しを出すことができました。

〜追加ソース〜

private DefaultTableModel getDefaultTableModel(){
if (defaultTableModel == null){
  try{
    defaultTableModel = new DefaultTableModel();
    }catch(java.lang.Throwable e){
    }
  }
  return defaultTableModel;
}


評価

0

>理解するために、プログラムを組みながら学びたいと思ってまして・・

それはいいこと。
でも、宣言、でピンと来ないなら、
基礎から固めるのがいいと思うな。

private DefaultTableModel getDefaultTableModel(){
if (defaultTableModel == null){
  try{
    defaultTableModel = new DefaultTableModel();
    }catch(java.lang.Throwable e){
    }
  }
  return defaultTableModel;
}
上記のコードの、
一行一行、くまなく説明できますか?
そうだったら、そのままの勉強方法でいいと思います。


評価

0

javax.swing.table.DefaultTableModelの
getDefaultTableModel()から
defaultTableModelオブジェクトがなければ、
インスタンスを生成している。

そして、javax.swing.JTableの
jTable.setModel()に
DefaultTableModel()にオブジェクトを突っ込んで、
defaultTableModel.addColumn()にて、列名を設定している。

・・・

評価

0

>javaの経験は素人です。
足し算が分からないのに、因数分解ができるだろうか。

動くモノを見てみたいという気持ちは分かるが、ステップを踏んでいかないと結局分からないことばかり増えていく。

評価

0

>javax.swing.table.DefaultTableModelの
>getDefaultTableModel()から
から、って何でしょう?

>インスタンスを生成している。
生成しておしまいですか?

>}catch(java.lang.Throwable e){
>}
ここの説明が無いですね。
privateの説明も無いですし。

>そして、javax.swing.JTableの
そこは私があげたところには書いてませんけども…


基礎からやったほうがいいと思うなぁ…。
最終的には、アリスさんが決める事ですけど。

基礎の本を、「読んだ」だけで、
「動かし」てもないし、「理解」もしてないんじゃないかなと。
千里の道も一歩からですよ。

HelloWorldだけだって、
勉強すべき事はたくさんありますよ。


評価

0

なまじGUIなんてものがあるから、引き寄せられちゃうのかな。
罪なものだね。

ま、最初の間は、好きにやればいいんじゃない。
最初から地味な話ばかりってのもなんだしね。
ただし、いつまでもそのままでいける、って訳でもない。

評価

0

ありがとうござます。

GUIでないとやる気が起きないのは確かです。

GUI以前の問題ですね・・
反省してもう一度がんばりたいと思います。

ただ、テーブル表示したかっただけなのに・・・

評価

0

見た目なんて飾りに過ぎません。
エライ人には、それがわからんのですよ。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。