問題タブ [defaulttablemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1033 参照

java - DefaultTableModel の dataVector の複製に関する問題

私はフレームにシンプルJFrameとAを持っています。JTableユーザーは、テーブルの行にデータを提供できます。要件の 1 つは、フレームを閉じた後に新しいデータを保存または破棄できることです。この動作を実現する最も簡単な方法は次のとおりだと思いました。

  1. フレームのメソッドをオーバーライドし、のデータ ベクトルsetVisible()を複製します。DefaultTableModel

  2. フレームに を追加WindowListenerし、イベントに反応しWindowClosingます。このようにして、ウィンドウ リスナーは、モデルを以前に保存されたモデルにリセットする必要があるかどうかを判断できます。

関連するコード スニペットは次のとおりです。

実は、おかしなことが起こっています。データ ベクトルを複製した後、テーブルをレンダリングできず、次の例外が発生します。

この表は、 とはまったく関係がありませんoriginalModel。理論的には、複製がテーブルのモデルに影響を与えるべきではないので、これは私にとって驚きです。originalModel の意図は、新しく作成されたテーブル モデルのコピーへの参照を保持することです。の作成をコメントアウトした後originalModel、すべてが正常に機能しました。

もう 1 つの興味深い点はStringheaderNamesベクターに空を追加すると、テーブル レンダラーがほぼ同じArrayIndexOutOfBounds例外をスローすることですが、次のようになります。

その場合、最初の行の最初の列は完全にレンダリングされました。

MyCustomTableModelは から拡張されてDefaultTableModelおり、特別なメソッドは使用していません。コンストラクターは、単にデータ ベクトルとヘッダー ベクトルをスーパークラスに渡します。

誰かが問題を解決するのを手伝ってくれることを願っています。前もって感謝します。

0 投票する
3 に答える
14884 参照

java - DefaultTableModelを使用するJTableの特定のセルにフォントの色を適用する方法

MS Accessに接続された単純なTo-DoリストJavaアプリケーションを作成しようとしていますが、JTableDefaultTableModelを使用してリストを表示しました。ボタンをクリックしたときに色を変えて、完了したタスクにマークを付けたい。インジケーターとして機能する「 completed 」という名前のブールフィールドがあります。

私はすでにcustomFontと呼ばれるFontオブジェクトを持っており、これを適用する準備ができています。私の質問は、completed==trueである特定のセルにのみそれを適用するにはどうすればよいですか。

サンプルコードをいただければ幸いです。

0 投票する
1 に答える
1722 参照

java - テーブルヘッダーの名前を変更します

私のJTableでは、右クリックオプションを使用してテーブルヘッダーの名前を変更したいと思います。任意のヘッダーを右クリックすると、ヘッダーの名前変更のオプションが表示されます。ただし、これを行うと、選択した列のヘッダーの名前が変更されます。したがって、最初にその列を左クリックする必要があります。その後、さらに処理できます。任意の列を右クリックすると、名前が変更された後に値の名前が変更されるように選択される方法はありますか?

私のアクションリスナーは以下の通りです:

0 投票する
1 に答える
2659 参照

java - DefaultTableModelが空ですか?

ファイルを読み込んでいて、それをjTableに出力して表示および編集したいと考えています。DefaultTableModelに行を追加しようとすると、何らかの理由でモデルが常に空になります。任意のヘルプ/指示をいただければ幸いです。ありがとう!

}

0 投票する
1 に答える
5799 参照

java - getValueAt() メソッドが null を返す

defaulttablemodel のすべての値を SQL データベースに保存しようとしていますが、table.valueAt() を介して最後に挿入された行に値を出力しようとすると、null が返されます。

0 投票する
1 に答える
3904 参照

java - 値を挿入する方法と、NETBEANS ビジュアル GUI を使用して JTable を作成する JTable で必要なときに実行時に行を増やす方法を教えてください。

値を挿入する方法と、NETBEANS ビジュアル GUI を使用して JTable を作成する JTable で必要なときに実行時に行を増やす方法は??

netbeans ビジュアル GUI で JTable を作成した後、実行時に行番号を増やす方法がわかりません。

0 投票する
3 に答える
1793 参照

java - DefaultTableModel が更新されない

新しいデータがデータベースに入力された後、JTable が更新されません。結果を確認するには、終了して再度実行する必要があります。DefaultTableModel と fireTableDataChanged を含めました。私は他に何を逃したのですか?ありがとう!

「更新ボタン」を作成して、代わりに値を更新できますか?

0 投票する
6 に答える
39633 参照

java - DefaultTableModelのすべての行を削除します

DefaultTableのすべての行を削除したい。インターネット上でそれらを削除する2つの一般的な方法を見つけましたが、これらのメソッドがDefaultTableModelに存在しないため、私の場合はどれも機能しません。なんでだろうか。DefaultTableModelを使用するための私のコードは

削除する1つの方法は

しかし、このremoverowメソッドは私のDefaultTableModelに存在しません。

0 投票する
1 に答える
1828 参照

java - ペイント中に JTable が IndexOutOfBoundsException をスローする

こんにちは、 を使用しJTableてデータベースからデータを表示するアプリケーションを構築していますが、ペイント中にを取得IndexOutOfBoundExceptionし続けています。tableModel.getValueAt(row,col)コードをデバッグしましたが、データがDefaultTableModelsデータ ベクトルに保存されていないようです。

これは私のコードです...

これは例外です...

tableModel.getDataVector().getElementAt(0).getElementAt(0)コードをデバッグし、 andへの呼び出しを追加しましたtableModel.getRowCount()。awt イベントキューと同様に、getRowCount()返されましたが、例外1000getElementAt()発生しました。IndexOutOfBounds私がやったことはうまくいくはずだと思いますが、明らかに欠けているものがあります。