アプリ版:「スタンプのみでお礼する」機能のリリースについて

ウィンドウが2つ表示されており、1の方でFromAを開いており、2の方でCall FormA.Set()
をするとFormAがNewされてしまいます。
FormAをNewすることなく2の方でFormA.SetDataを呼ぶにはどうしたらよいでしょうか。

A 回答 (2件)

2の方でFormAをまたインスタンス化してるのでしょうね。



質のいいコードでは、異なるFormの操作を異なるFormで行わないことです。

やるなら

1.Set()だかSetData()だかがインターフェースとして用意し、
  そのインターフェースをFormAが実装する。
2.FormBの表示にはリクエストデータとしてインターフェースを
  実装したオブジェクトを受け付けるようにし、
  FormBのリクエストデータとしてFormAを渡す。
3.FormBでは、リクエストデータで受け取ったインターフェースを
  実装したオブジェクトから、Set()またはSetData()を呼び出す。

とかでしょうね。
    • good
    • 0

同じ質問文を掲載するより、再現性を確認出来る部分だけでもコードを提示した方が宜しいのでは?


と初心者レベルには感じます。
中・上級者なら同じ内容で理解できるのかどうかについては不明ですが。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!