Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.07.2008, 14:28   #1
Var17
Пользователь
 
Регистрация: 13.12.2007
Сообщений: 41
По умолчанию передать переменную другой форме

Необходимо значение переменной из одной формы Delphi передать в другую форму одного и того же проекта, переменная булевая, как это можно сделать ?
Var17 вне форума Ответить с цитированием
Старый 22.07.2008, 14:38   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Объяви глабально например в Unite1 выше implementation и в Unit2 пишеш Unit1.ИмяПеременной. Так аналогично для любого класс ( таже форма ) только в ее описании после public.
BOBAH13 вне форума Ответить с цитированием
Старый 22.07.2008, 14:42   #3
NikLik
Форумчанин
 
Аватар для NikLik
 
Регистрация: 22.11.2007
Сообщений: 224
По умолчанию

"передавать" можно только глобальные переменные.
Например
form1- в unit1
form2- в unit2
в unit1:
Код:
var Form1:TForm1;
a1:boolean;
в unit2:
Код:
var Form2:TForm2;
a2:boolean;
Потом где угодно в unit1:
a1:=unit2.a2;
Где угодно в unit2:
a2:=unit2.a1;
NikLik вне форума Ответить с цитированием
Старый 06.01.2009, 22:41   #4
Jora_Kornev
Пользователь
 
Аватар для Jora_Kornev
 
Регистрация: 06.01.2009
Сообщений: 72
По умолчанию

а как поступить если нужно несколько раз передавать значение переменной из одной формы в другую и потом наоборот? у меня выскакивает ошибка о цикличности.
ася: тристадевяносто 068 ноль восемь шесть
Jora_Kornev вне форума Ответить с цитированием
Старый 06.01.2009, 23:42   #5
ViktorXP
Форумчанин
 
Аватар для ViktorXP
 
Регистрация: 24.11.2006
Сообщений: 108
По умолчанию

а зачем вам переменная. есть ведь процедуры/функции
Код:
type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    procedure test2(var d: Integer);
  end;

procedure TForm1.test2(var d: Integer);
begin
  inc(d);
end;
.....................................................
type
  TForm2 = class(TForm)
  private
    { Private declarations }
  public
    function test(d: Integer): Integer;
  end;

function TForm2.test(d: Integer): Integer;
begin
  Result := d + 1;
end;
и вызывай из одной формы одну процедуру а из другой другую. и не надо ничего глобального.просто есть печальный опыт работы с глобальными переменными (пришлось модулей ~20 пересматривать и переписывать вызовы обектов, кароч кошмар)
пс. лудше зразу себя приучивать обходится по минимум с глобальными переменными

Последний раз редактировалось ViktorXP; 06.01.2009 в 23:45.
ViktorXP вне форума Ответить с цитированием
Старый 07.01.2009, 02:03   #6
Jora_Kornev
Пользователь
 
Аватар для Jora_Kornev
 
Регистрация: 06.01.2009
Сообщений: 72
По умолчанию

Спасибо, разобрался) А на счет минимума глабальных переменных - учтемс)
ася: тристадевяносто 068 ноль восемь шесть
Jora_Kornev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
взять переменную из dll Roof Общие вопросы Delphi 15 27.08.2008 16:40
Использование компонентов в другой форме White БД в Delphi 3 27.08.2008 13:32
где описать переменную Manitu Помощь студентам 2 14.05.2008 18:23
Передача параметра компаненту на другой форме. Kukkk Компоненты Delphi 1 28.09.2007 00:31
передать переменную ar4i Общие вопросы Delphi 10 04.12.2006 14:30