問題タブ [abstracttablemodel]
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 - JTable#repaint() が期待どおりに機能しない
このアプリケーションは、テキスト ファイルからデータを取得して に挿入しますJTable
。Observer
ファイルに変更があるかどうかを 300 ms ごとにチェックし、データをリロードするためのAnが付けられています。クラスにsetChanged()
andnotifyObservers()
があります。Observer
データがテーブルに追加されるgetRowCount()
と、行が追加されたことを報告し、ノーティファイアが動作します。を除いて、事実上すべてが機能していrepaint()
ます。私は試してみましたがrevalidate()
、fireTableDataChanged()
すべて役に立ちませんでした。これについて助けていただければ幸いです。プロセス全体でコンパイル エラーは報告されません。
テーブル モデル
オブザーバー クラス
メインクラス
録音ボタンを追加
java - AbstractTableModelを拡張し、jTableに動的にデータを入力します
基本的に、私はクライアントサーバーアーキテクチャに取り組んでいるので、一部のクライアントはオブジェクトを外部から変更できます。
私は銀行を持っています:
そして私のサーバー:
クライアントは、addOperation()を呼び出すことにより、バンクのoperationListにオペレーションを追加できます。
問題は、JTableがそれをどのように検出し、表示を更新できるかということです。
クライアントは、操作を追加するためにTableModelメソッドを使用していないためです。彼らはこのクラスにアクセスできません。その上、TableModelコンストラクターでBankのoperationList全体を指定するのが良いかどうかはわかりません...
java - GUIを使用してサーバーアーキテクチャを整理する方法
私は銀行のクライアントサーバーアーキテクチャを開発しています。
サーバー側を整理するための最も便利な方法を知りたいです。銀行は同じファイル内のサーバーとGUIである必要がありますか?
現在、銀行をインスタンス化するサーバーGUIがあるためです。この銀行には顧客のリストがあり、各顧客には複数のアカウントがあります。
私の最初の問題は、サーバーGUIのJTableに関するものです。実際、銀行は以前にクライアントによって実行されたすべての操作のArrayListを格納します。ArrayListも格納するAbstractTableModelの実装を作成しました。問題は、サーバーがJTableのバンクとTableModelをインスタンス化することです。したがって、銀行がArrayListにオペレーションを追加するとき、TableModelはそれを認識しません。TableModelを銀行に渡さずにこれら2つをリンクするにはどうすればよいですか?
2番目の問題は、クライアントとの接続に関するものです。ログイン/パスワードが正しい場合、サーバーはセッションインターフェイスをクライアントに渡します。セッションには、クライアントが実行できる銀行業務が含まれます。SessionImplがBankインスタンスをカプセル化する場合、それはセキュリティの問題ですか?実際には、SessionメソッドはBankメソッドを呼び出すためです。セッションはクライアントとサーバー間の唯一のリモートオブジェクトですが、バンクをカプセル化すると、クライアントがバンクに直接アクセスできるという印象を与えます。
java - Java Swing JTable: テーブル モデルの使用/作成が正しくないため、テーブルの値にアクセスできません
Java Swing を使用してプログラミングを始めたばかりです。私は多くの Java Swing クラスのそれぞれにあまり詳しくなく、テーブルの作成に関してつまずきに遭遇しました。
私が作成している Java Swing プログラムにテーブルを追加する方法を見つけようとしています。docs.oracle.com を調べて調べてみましたが、テーブルの値にアクセスしようとするとエラーが発生します。現在何をしようとしているのか、どこにエラーがあるのかを示すのに役立つコードを含めます。
これは、テーブルとテーブル モデルを作成するための私のコードです (問題は、テーブル モデルが正しく機能していないことだと思います)。
テーブルが表示され、各セルの空白の値を編集したら、セルを送信する送信ボタンをクリックします。ただし、次のエラーが発生します。
次のように送信しようとすると、エラーが発生します。
現在発生している問題と現在試したことの例を示すためにコードを提供しました。私の質問を一般化するために、テーブル モデル クラスを正しく記述して、テーブル内の各セルの値にアクセスできるようにする方法を考えています。どんな支援も役に立ちます。ありがとうございます!
java - テキストファイルからJTableにデータを表示するには
私のテキストファイルには次のようなデータが含まれています:sample.txt
MEMHEAD 1 1 NA SetString srcCode
MEMHEAD 1 2 NA SetString memIdnum
LGLNAME 1 5 該当なし SetString onmfirst
MyClassModel
次のように拡張するクラスを作成しましAbstractTableModel
た:
このようにして、ファイルからデータを取得しました。JTable
を使用してモデルを作成し、設定すると、 table.setModel(MyTableModel)
. を取得していNullPointerException
ます。
続き:
テキスト ファイル データは JTable に表示されていますが、JTable にはジャンク データを含む余分な行も含まれており、それらの行を押すと、
java.lang.ArrayIndexOutOfBoundsException: 180 >= 180
この例外がスローされます。しかし、回線に問題があることがわかりました
しかし、何が問題なのかわかりません。助けてください。
java - TableModel - GUI に何も表示されませんか?
DAO から GUI レベルにデータを取得しています。
テーブルをロードしたい場合、クリックされた db シンボルの正しい行数のみを持つ空のテーブルを取得します。
私が使用する要素をロードするには:
テーブルが空なのはなぜですか?
アップデート
テーブル モデル コード:
java - AbstractTableModel を使用して JTable から行を削除する
ボタンJTable
を使用して選択した行を削除したいと思います。AbstractTableModel
以下のコードは、DefaultTableModel で動作します。
しかし、それは動作しませんAbstractTablemodel
。
コードに少し混乱があるため、使用できるOracleページのJavaの例を次に示します。
ありがとう!
java - JTable をプログラムでのみ編集できるようにするが、ユーザーはそこからデータをコピーできるようにする
段落を長くせずにタイトルをどのように表現するかがよくわかりません。
基本的にJTable
、私は自分のプログラムにユーザーが編集できない を持っています。ただし、プログラムはそれ自体を編集できる必要があります。さらに、ユーザーはテーブル内のセルからテキストを実際に選択してコピーできるようにする必要がありますが、編集することはできません。
どうすればこれを達成できますか?できれば、プログラム内の異なるレイアウトなどの複数のテーブルに適用できるように、一般的なソリューションを使用してください。
java - ジェネリックを維持しながら別の JTable を作成する
Model
のリストで構成されたを使用する作業プログラムがありItem
ます。
しかし今、いくつかのアクション ボタン (追加、削除、編集) を含むビューを作成し、中央に特定のアイテム (A、B、C) を表示する JTable を作成する必要があります。特定のアイテムごとにそのフィールドの1つの列があるため、最初の問題は次のとおりです。そのため、アイテムごとに異なるテーブルが必要です。
解決策は、アイテムの種類ごとに 1 つのテーブルを持つ cardlayout を持つことですが、新しい問題が発生しinstanceof()
ます。
さらに、この後に他の問題が発生します。ビューに x jtable がある場合、ビューはどのようにしてこのテーブルのモデルを取得しますか? 私はそのようなインターフェースを各アイテムに実装できます:
しかし、私はこの関数にリストしか与えることができないので、各アイテムはどのようにしてそのタイプのアイテムだけでデータ配列を埋めますか?
PS : 反射をさらに進めると、おまけの質問があります。アクション ボタンのリスナーが、どの JTable が現在変更されているかをどのように簡単に知ることができるのか疑問に思っています。カードレイアウト ?
私の質問を改善するために何かが必要な場合は、それを求めてください! 質問が現在明確かどうかはわかりません。
編集: SSCCE を追加します。これは私が目指しているものですが、現在、プログラムのアイテムを使用しておらず、TableModel/TableModelListener を実装していません。
java - Java-TableModelListenersおよびDataModelEvents
いつ独自のTableModelListenersとDataModelEventsを作成する必要がありますか?
、、の違いと使い方DefaultTableModel
を 知っています。AbstractTableModel
TableModel
DefaultTableModelクラスとAbstractTableModelクラスのいずれかを拡張するクラス(カスタムモデル)を作成するときに、TableModelListenersとDataModelEventsが明示的に作成される多くのオンラインJavaの例を見てきました。
これは私の理解です:
私が拡張している
DefaultTableModel
場合、このモデルは、DataModelEventsとTableModelListenersを作成する方法(追加する必要がないように)をすでに知っており、これらのイベントをリッスン/監視し、TableModelListenersに通知することも知っています。AbstractTableModelを拡張している場合、このモデルは、DataModelEventsとTableModelListenersを作成する方法をすでに知っているので(追加する必要はありません)、これらのイベントをリッスン/監視します。ただし、firetablechanged()または同様のメソッドを明示的に呼び出して、イベントについてTableModelListenersに通知する必要があります。
TableModelを実装している場合、このモデルはDataModelEventsの作成方法をすでに知っていますが、これらのイベントをリッスン/監視するTableModelListenersを持っていません(追加する必要があります)。また、firetablechanged()または同様のメソッドを明示的に呼び出して、イベントについてTableModelListenersに通知する必要があります。