![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Я описываю в юните главной формы переменную:
Код:
unit Unit_Glavnaya_Forma;
бла-бла-бла
var
Form1: TForm1;
PokazUzlov:integer; {вот эту переменную}как сделать эту переменную доступной в юнит2 ??? |
|
#2
|
||||
|
||||
|
для начала объявить ее в Public
|
|
#3
|
||||
|
||||
|
все, что в interface, все public:
Код:
unit Unit2; interface var bla: Integer; implementation end. Код:
unit Unit1;
interface
uses
Unit2,
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
bla:=0;
end;
end. |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
||||
|
||||
|
я это хотел сказать (цитата из писания) написав "public":
Цитата:
в любом случае ответ на вопрос топикстартера дан: Цитата:
Последний раз редактировалось NumLock, 02.09.2010 в 20:49. |
|
#6
|
||||
|
||||
|
спасибо NumLock.
|
|
#7
|
|||
|
|||
|
Цитата:
|
|
#8
|
|||
|
|||
|
Цитата:
![]() |
|
#9
|
||||
|
||||
|
Цитата:
Объясняю для тех кто не понял: Если у вас 2 юнита (один из них как не крути будет главным) и вам необходима глобальная переменная доступная в обоих юнитах, то вам необходимо: 1. Понять какой юнит главный (это тот в uses у которого указан НЕ главный); 2. В разделе var НЕ главного юнита описать необходимую переменную. |
|
#10
|
||||
|
||||
|
Код:
unit Unit1;
interface
uses
Unit2, Unit3,
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Caption:=IntToStr(do_something2)+' '+do_something3;
end;
end.Код:
unit Unit2; interface var Bla_Unit2: String = 'ok'; function do_something2: Integer; implementation uses Unit3; function do_something2: Integer; begin Result:=Bla_Unit3; end; end. Код:
unit Unit3; interface var Bla_Unit3: Integer = 255; function do_something3: String; implementation uses Unit2; function do_something3: String; begin Result:=Bla_Unit2; end; end. кто главный Unit2 или Unit3?) Unit1 не в счет - в нем только главная форма Последний раз редактировалось NumLock, 04.09.2010 в 08:58. |