Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Глобальная переменная


Gentos ©   (2007-04-04 11:19:00) 

Добрый день уважаемые творцы. У меня есть две формы как с одной формы получить доступ к переменной типа integer другой формы , где ее и как объявлять надо вот в чем вопрос, помогите плиз


Gentos   (2007-04-04 11:42:00) [1]


> SergGG ©   (04.04.07 11:37) [12]

большое спасибо за потраченное время , все работает, тема закрыта.


Сергей М.   (2007-04-04 11:39:00) [2]


> как получить доступ все-таки ?


Тебе же в [6] уже сказали - через обращение к одноименному полю объекта класса, в котором это поле объявлено

MySuperPuperForm.c := 5;


Reindeer Moss Eater   (2007-04-04 11:39:00) [3]

а можна кодом :) ?

Экземпляр, точка, имя поля.


Сергей М.   (2007-04-04 11:39:00) [4]


> как получить доступ все-таки ?


Тебе же в [6] уже сказали - через обращение к одноименному полю объекта класса, в котором это поле объявлено

MySuperPuperForm.c := 5;


SergGG   (2007-04-04 11:37:00) [5]

{Unit1}

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

 GlobalInt:Integer;

implementation

{$R *.dfm}

end.
{----------}
{Unit2}

unit Unit2;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm2 = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form2: TForm2;

implementation
uses Unit1;

{$R *.dfm}

end.


В Form2 будет доступ к GlobalInt


Gentos   (2007-04-04 11:36:00) [6]


> Сергей М. ©   (04.04.07 11:34) [7]


зарубил :), но как получить доступ все-таки ? :)


Сергей М.   (2007-04-04 11:36:00) [7]


> Gentos   (04.04.07 11:35) [8]


integer - это тот самый MyType)


Gentos   (2007-04-04 11:36:00) [8]


> Reindeer Moss Eater ©   (04.04.07 11:33) [6]


а можна кодом :) ?


Gentos   (2007-04-04 11:35:00) [9]


> Сергей М. ©  


та мне всего лишь необходимо доступ к integer а Вы тут уже type пишите :)


Сергей М.   (2007-04-04 11:34:00) [10]


> вот объявил


> public
>    { Public declarations }
>    c : Integer;


с - это не переменная, это поле класса. Заруби на носу.


Gentos   (2007-04-04 11:33:00) [11]


> DrPass ©  

Мне надо получить доступ к  переменной "поле класса" формы


Reindeer Moss Eater   (2007-04-04 11:33:00) [12]

Через экземпляр и получи


Gentos   (2007-04-04 11:30:00) [13]


> Плохиш ©  

Описывают только в моей не описывают.
вот объявил

unit MainFormMoney;
...
public
   { Public declarations }
   c : Integer;
end;


как мне с формы unit OtchetFormMoney;
получить доступ к с MainFormMoney пишу в OtchetFormMoney MainFormMoney.с- пишет мне учитесь, как получить доступ все таки ?


Сергей М.   (2007-04-04 11:28:00) [14]


> где ее и как объявлять надо


Глобальные переменные любого типа должны быть объявлены в разделе interface модуля.

unit uForm1;
interface
...
var
 MyVariable: MyType;
...
implementation
...

unit uForm2;
...
implementation
...
uses .., uForm1, ...
...
MyVariable := MyValue;

Но к формам это все не имеет ни малейшего отношения.


DrPass   (2007-04-04 11:25:00) [15]

Для начала разобраться с терминологией. Есть "глобальная переменная", объявленная в самом модуле, которая не относится ни к какой форме. И есть переменная "поле класса" у формы. Тебе что надо?


Плохиш   (2007-04-04 11:24:00) [16]


> Gentos   (04.04.07 11:19)  

Неужели в книжках основ уже не oписывают?

PS. interface, public


Наверх

Титульная страница Поиск, карта сайта Написать письмо