ユーザーは、頂点とエッジを追加してグラフを作成できるユーザーインターフェイスを作成する必要があります。私はすべての基本コーディングが完了しており、頂点を追加できるようにGUIにボタンを追加したいと考えています。私は別のクラスのキャンバスからグラフを描画します。今私の問題は、私はGUIクラスでグラフを作成する場合、それを描くためにキャンバスからどのように私はそれにアクセスするのですか?または、キャンバスクラスでグラフを作成する場合、グラフを更新するにはどうしたらいいですか? コードスニペットがわからない...異なるクラスのクラスのインスタンスにアクセスしますか?
-1
A
答えて
1
あなたのキャンバスとボタンオブジェクトは、どうにか調整する必要があります。ボタンがキャンバスを知っているか、キャンバスがボタンを知っていなければならないか、またはそれらは第3のクラス(UIをまとめるもの)によって提供されるグラフオブジェクトを知る必要があります。
オブジェクトの1つにgetGraph()
メソッドを追加して、必要なアクセスを許可することができます。
0
ノードとエッジに関する情報を格納する何らかの種類のデータ構造が必要です。描画するにはキャンバスにそれを読み込まなければならず、UIはその構造体から項目を挿入/更新/削除する必要があります。
これまでにこの構造を保存していた場合は、その構造やそれを変更するメソッドへの参照を提供する必要があります。
関連する問題
- 1. クラスのインスタンス化と異なるクラスのメソッドへのアクセス
- 2. アクセス・クラス・インスタンス
- 3. クラスの異なるインスタンスを作成します
- 4. 異なるクラスの関数へのアクセス
- 5. VBA [クラス] - 別のサブのクラスのインスタンス化されたインスタンスにアクセスする方法
- 6. 別のクラスの中にあるクラスからインスタンス変数にアクセスするには
- 7. C#クラス:インスタンスによるメソッドへのアクセス
- 8. 異なるクラスのプロパティへのアクセスが異なる
- 9. サブクラス内のクラスをインスタンス化し、別のサブクラス内のインスタンスにアクセス
- 10. C#クラスの各インスタンスには異なるメソッドが必要です
- 11. あるクラスのインスタンスを別のクラスのインスタンスにするには
- 12. 異なるスレッドで1つのクラスのインスタンスを使用する
- 13. 異なるクラスの団結のデータにアクセスする
- 14. コンソールでインスタンス内のクラス変数にアクセスできますか?
- 15. 異なるクラスから同じイテレータリストにアクセスする
- 16. ハッシュセットとすべてのメンバーが同じクラスの異なるインスタンス
- 17. そのクラスからPythonインスタンスのvarにアクセスする
- 18. 異なるメソッドでクラスのインスタンスを作成する方法
- 19. Pythonでクラスの異なるインスタンスを作成する方法は?
- 20. 同じクラスのjava graphics2dインスタンスが異なる振る舞いをします
- 21. iPhoneのpushViewController同じクラスの異なるインスタンス
- 22. クラス内のクラスに別のクラスからアクセスする
- 23. クラス・メソッドはクラス・インスタンスのサイズを大きくしますか?
- 24. クラスのインスタンス化時にプライベートセッターにアクセスできない(ActionScript 3)
- 25. iPhone:別のクラスのクラスにアクセスする
- 26. Python:クラスのリストからクラスの新しいインスタンスをインスタンス化する
- 27. クラス・タイプからクラスをインスタンス化する
- 28. 別のクラスのIBOutletインスタンスにアクセスするインスタンスメソッドを呼び出す
- 29. 異なるクラスから
- 30. hashCodeは、内部クラスの異なるインスタンスに対して同じにすることができますか?
これ以上の情報を提供する必要があります。あなたはUIを作成するために何を使用していますか? – YXD
[Model-View-Controller](http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller)を見てください。このパターンに従わなくても、モデルをプレゼンテーションから分離しておくことを考えさせます。 –
UIのスイングとawtの使用 – Pseudos