VC++/CLIを始めて1か月ですが、どうしても分からないので質問させていただきます。
行いたいことは、以下のことです。
1. Form1のbutton1を押して、Form2を表示する。
2. Form2のbutton2を押して、Form1のlabel1に何か文字を表示する。
Form1.hのコード
#include "From2.h"
~~~~~中略~~~~~~~
Form2^ f2=gcnew Form2();
f2->ShowDialog();
このコードでForm2は表示できたのですが、その先が分かりません。
Form2からForm1のlabel1への操作がうまくゆきません
「相互参照」でも調べましたが、理解に至らず困っています。
.cppファイルへのコードが大切なのでしょうか。
どういうコードで解決できるのか、ご教授をお願いいたします。
親ウィンドウはOwnerでアクセスできます。
直に扱おうとするならlabel1はpublicで宣言しないと扱えません
(個人的にはForm1側にpublicの関数を用意するべきと思います)。
((Form1^)Owner)->label1->…
Application::OpenFormsでForm一覧取得するのもありかな。
επιστημηさん、ありがとうございました。うまくいきました。
まさに教えていただきたかったコードです。
デリゲート型は初めて知りました。delegateについて記載している参考書が手元に無く、まだ十分理解しておりませんが、じっくり理解を深めていきたいです。
みいさんも、ありがとうございました。
解決済みとさせていただきます。
ツイート | ![]() |