AbstractTableModel GUI 表示の問題
AbstractTableModel を使用して GUI を作成するために提供されている Java コードには、表示と関連するいくつかの問題があります。 2 番目の GUI ウィンドウ (Gui2 クラス) の機能。
最初の問題: 一貫性のない GUI の外観
Gui2 ウィンドウは 2 つの異なる方法で表示されると述べました。空のパネルと、テーブルとボタンのあるもう 1 つのパネルです。この一貫性のない動作は、通常、GUI コンポーネントの初期化または表示が正しくないことが原因で発生します。
Gui2 クラスのコンストラクターでは、パネルが作成され、レイアウトと制約が定義されますが、コンポーネント (テキスト フィールド、ボタン、テーブルなど)はパネルに追加されません。これを修正するには、add() メソッドを使用するか、コンポーネント タイプごとに特定のメソッドを呼び出してコンポーネントをパネルに追加する必要があります。
第 2 の問題: 削除後のテーブルの更新
「選択した行を削除」ボタンの ActionListener は削除クエリをトリガーし、成功メッセージを表示しますが、テーブルは削除を反映するように自動的に更新されません。この問題は、テーブル モデルの更新方法に関連しています。
データベースから行を削除する場合、基になるテーブル モデルを更新して、削除された行をデータ構造から削除する必要があります。 AbstractTableModel は、特にこの目的のために fireTableRowsDeleted() と呼ばれるメソッドを提供します。
この問題を解決するには、削除ボタンの ActionListener で削除が成功した後に、fireTableRowsDeleted() を呼び出す行を追加する必要があります。これにより、データが変更されたことが JTable に通知され、それに応じて表示が更新されます。
追加の考慮事項:
以上がGUI 表示に一貫性がないのはなぜですか? 削除後にテーブルを更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。