Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 08.03.2011, 18:49
Iskatel_S Iskatel_S вне форума
Прохожий
 
Регистрация: 27.11.2010
Адрес: Москва (съёмное жильё)
Сообщения: 14
Репутация: 10
По умолчанию Основы многомодульности

Здравствуйте!
Я вот тут изучаю Delphi и не могу понять один момент.

Я уже догадался, что если я создаю графическую программу с формами, то одномодульной она быть не может. Когда я создаю графическую форму, то вместе с ней создаётся модуль, без модуля форма работать не может. Но как обмениваться данными между модулем и основной программой?

Допустим в основной пограме Project1.dpr у меня вычисляется 36 в степени 3.
Код:
	result:=Exp(3*Ln(36));
Потом вызывается рисование формы window1:
Код:
	Application.CreateForm(Twindow1, window1);
которая описана в модуле unit1
Код:
uses
	...
	Unit1 in 'Unit1.pas' {window1};
В модуле вывод результата осуществляется путём присваивания метки lbl1:
Код:
	procedure Twindow1.FormCreate(Sender: TObject);
	begin
		lbl1.Caption:=FloatToStr(result);
	end;
Однако при запуске программы форма выводится пустой, значение переменной result из основной программы в модуль не передалось. Научите меня как это делать.
Ответить с цитированием
  #2  
Старый 08.03.2011, 19:07
Asinkrit Asinkrit вне форума
Местный
 
Регистрация: 29.10.2009
Сообщения: 446
Репутация: 271
По умолчанию

Вот здесь я расписывал данную ситуацию довольно подробно: ссылка
Ответить с цитированием
  #3  
Старый 08.03.2011, 22:26
Iskatel_S Iskatel_S вне форума
Прохожий
 
Регистрация: 27.11.2010
Адрес: Москва (съёмное жильё)
Сообщения: 14
Репутация: 10
По умолчанию

Asinkrit, э... либо это не та ссылка, либо мне не хватает знаний чтобы понять о чём там. Что такое "разрушение формы" и какое это имеет отношение к моему вопросу?
Ответить с цитированием
  #4  
Старый 08.03.2011, 23:18
Asinkrit Asinkrit вне форума
Местный
 
Регистрация: 29.10.2009
Сообщения: 446
Репутация: 271
По умолчанию

В последнем посте, я расписал как использовать формы, там речь о модальных формах, стоило бы все прочитать, тогда вопросов бы не возникло. А вообще стоит книжечку в руки взять по дельфи, да прочитать хотя первые листов 100, тогда вопросов по данной тематике не возникнет.
Ответить с цитированием
  #5  
Старый 14.03.2011, 01:22
Iskatel_S Iskatel_S вне форума
Прохожий
 
Регистрация: 27.11.2010
Адрес: Москва (съёмное жильё)
Сообщения: 14
Репутация: 10
По умолчанию

Мне уже других форумах подсказали, не посвящнных Delphi, а просто компьютерных. То, что передача переменных из одного модуля в другой осуществляется указанием модуля, то есть мне следовало бы написать:
Unit1.window1.lbl1.Caption:=FloatToStr(result1)

Не знаю почему мне об этом не сказали тут. Кстати, я как раз прочитал примерно 100 страниц, плюс несколько последующих глав про модули и процедуры.
Ответить с цитированием
  #6  
Старый 14.03.2011, 10:35
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Указать имя модуля при обращении мало, необходимо его еще упомянуть в секции Uses.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 04:14.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter