例えばForm1でXという変数に4桁の数字が入っていて、Form2でもYという変数に4桁の数字が入っています。Form2上でXとYを比較してもし同じなら・・・というもの作る時Form2でXを宣言するとそれはForm1のXとして認識してくれるのですか?
認識してくれません。
Form2でXを宣言せずに、Form1.Xを使用して下さい。
但し、XはPublic宣言です。
さらに、unit2に、uses unit1;が要ります。
返事ありがとうございます。とてもわかりやすいです。
XをPublic宣言というのがわからないのですが、すみません、教えてくれませんか?
以下のような宣言です。
TForm1 = class(TForm)
private
{ Private 宣言 }
public
{ Public 宣言 }
X: integer;
end;
ユニット内の記述に以下の内容がありますね
その中の
Type
TForm1 = Class(From)
・・・・
Private
{Private宣言}
Public
{Public宣言}
//この位置です。
end;
Publicに宣言した変数・関数・手続きは他のユニットでも参照又は使用できます。
(もっとも、deldelさんがいわれるようにusesしないと駄目ですけど)
privateやimplementation 以下に記述した変数などは参照できません。
しかし、
Type
TForm1 = Class(From)
・・・・
Private
{Private宣言}
Public
{Public宣言}
end;
var
Form1:TForm1;
//ここに宣言
implementation
しても、使えますが多分誰も推奨しないでしょう。
deldelさんありがとうございます。無事できました。
ツイート | ![]() |