問題タブ [tablemodel]
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.
java - TableModelの変更全体でJTableの選択を保持する
からまたはJTable
を実行すると、選択がクリアされます。fireTableDataChanged()
fireTableRowsUpdated()
TableModel
これは予想されることですか、それとも何か間違ったことをしていますか?JTable
モデルの更新時に選択をクリア/保持することについて、(または他の関連クラス)にプロパティが表示されませんでした。
これがデフォルトの動作である場合、これを防ぐ良い方法はありますか?おそらく、更新前に選択を「ロック」し、更新後にロックを解除する方法はありますか?
開発者は、更新前に選択範囲を保存して再適用することを試みてきました。少し遅いです。
それが重要な場合、これはWindowsXP上のJava1.4.2です。使用するベンダーコードに基づいて、そのバージョンに制限されています。
swing - 遅延インスタンス化のためのJTable + TableModelキャッシュフェッチイベント?
シナリオ:
カスタム TableModel で JTable を使用して、データベースやネットワークなどにあるコレクションの内容を表示しています。
これを機能させる強引な方法は、コレクション全体を一度にロードすることです。必要なリソースのために、それは実用的ではないとしましょう。
この問題を回避する簡単な方法は、JTable が各行をレンダリングし、TableModel.getValueAt(); を呼び出すときに、必要に応じて一度に 1 行ずつ行をフェッチすることです。必要に応じてキャッシュします。ただし、これにより、データベースに多くのヒットが発生します。
各セルをレンダリングする前に表示する行を把握するために、JTable のスクロール/ビューポート イベントをリッスンする方法はありますか? もしそうなら、カスタム TableModel をインターセプトして、一度に 1 ページずつプリフェッチさせたいと思います。
編集:明確にするために、ここでのポイントは、各行の内容を単独で取得するのではなく、表示されているテーブル行のグループの内容を 1 つのバッチで取得できるようにすることです。
java - jTable で行を移動する
行 1 が行 2の位置に移動し、行 2 が行 1 の位置に移動するjTable
ように行を移動するにはどうすればよいでしょうか。
java - オブジェクトを ArrayList に追加する際の問題
私の質問は、オブジェクトを配列に追加する方法についてです。私の場合、4 列の配列クラスがあり、プログラムでオブジェクトを配列に追加できません。
私は試してみました:
しかし、私のプログラムは実行されません..誰もがそれを行う方法を知っていますか?
java - Java Swing でテーブル モデルを使用してテーブル タイトルを表示する
コンストラクター メソッド JTable(TableModel) でテーブルを作成したいと思います。各列のタイトルを表示するには、TableModel のどの正確なメソッドが必要ですか?
java - テーブル モデルによって生成されたときの JCheckBox の初期化
Java SwingJTable
では、 を拡張するテーブル モデル クラスを使用する を作成しましたDefaultTableModel
。テーブルの 1 つの行の値はブール型であるため、これらはチェック ボックスとして表示されます。これらのチェック ボックスに「アイテム リスナー」クラスを追加したいので、これらのチェック ボックスをそれぞれ初期化する必要があります。しかし、これらがテーブル モデルによって自動的に作成される場合はどうすればよいでしょうか。
java - JavaのJTableのJDBCTableModel?
データベーステーブルをJTableとして表示したい。私はこれまでJTableを使用したことがないので、JTableとTableModelをグーグルで検索しました。
そのグーグルで、私はに保存されたデータを表示する独自のカスタムTableModelを書くことができます
次に、データベーステーブルのデータをJTableに表示します。私もそれを検索し、それについての考えを持っていますが、AbstractTableModelの実装クラスのどこに何をすべきかについてまだ混乱しています。
以下は、カスタムTableModelのコードです。
次に、上記のコードを変更して、JTableに次の機能を持たせる方法を説明します。
- データベースからのデータを表示します
- ユーザーはテーブルを直接編集でき、「保存」ボタンをクリックすると、変更がデータベースデータに反映されます。
- ユーザーはデータを直接挿入できます。
- ユーザーはデータを直接削除できます。
java - JAVAでAbstractTableModelを実装する際の例外?
次のようにカスタムテーブルモデルを実装しました。
上記のTableModelを持つJTableを表示すると、上記のメソッドによってNullPointerExceptionがスローされます。
例外は、データベーステーブルのいくつかの空のセルが原因だと思います。
例外がデータベーステーブルの空のセルが原因である場合、この問題を回避するにはどうすればよいですか?
データベース内のすべての列に何らかの値があることは必須ではありません。一部の列には何も含めることができません。
java - Java:JTableによる行の並べ替えと更新
私はJTable
(拡張された)との実装TableModel
を持っています、そこで私はメソッドを持っています...
moveEntryUp(int rowIdx)
moveEntryDown(int rowIdx)
...テーブルモデルの実装内。これらが正しく機能することを確認しました。
ただし、テーブルモデルで行われた変更を実際のに反映させるのに問題がありますJTable
。この表では、単一行の選択のみを許可し、上と下に別々のボタンがあります。行が選出されたら、その行を上下に移動して、選択を保持できるようにする必要があります。
たとえば
、行が[A, B, C(selected)]
で、上ボタンを押すと、が表示され
ます[A, C(selected), B]
。
私がこれまでに試したさまざまなアプローチは、JTableの値を更新できないか、選択を失います。
注:
への明示的な呼び出しを必要とするソリューションを使用することを躊躇していますrepaint()
。内のすべてのセルが編集可能ではない
と想定します。JTable
java - DefaultTableModel へのラジオ ボタンの挿入
DefaultTableModel を拡張するテーブル モデル クラスを介してテーブルに表示する必要があるオブジェクトの 2D 配列があります。この配列に含まれるデータを収容するために必要な列に加えて、ユーザーが選択できるようにするために、ラジオボタンのある列を追加したいと思います。テーブル モデルはオブジェクトまたはベクトルの配列のみを受け入れるため、ラジオ ボタンを追加するにはどうすればよいですか?