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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2012, 07:38   #11
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Форма хоть и "должна", но надо знать, что в программе преимущественно последовательно действия происходят, а Вы неаккуратно вклиниваетесь.
Качаем телепатию:
Перенесите вызов процедуры LevelCreate из обработчика Form1Create в более подходящий для такого случая Form1Show или Form1Activate
и будет Вам счастье )
Совет: выкинуть имейджи, формы и т.п. требуху, оставить только 1 форму и списки/массивы картинок, написать несколько процедур вывода изображения на форму, в зависимости от текущего "игрового окна"
Плюс советую проштудировать http://programmersforum.ru/showthread.php?t=1206 . Ну и советую темы по играм в разделе игр создавать.
Советую больше внимания обратить чистоте кода и независимости подсистем. Например, глобальные переменные - очень плохо способствуют независимости. Общение между формами так как Вы привели - достаточно нелогично - раз форма родитель компонентам - пусть они на ней создаются.
Процедуры лучше обратить в методы некоего класса, (а большинство глоб. переменных - в его поля) , получится некий game-класс, ну и желательно чтобы гейм-класс вообще не знал ничего о форме, форма только должна запрашивать от гейма что ей отобразить.
phomm вне форума Ответить с цитированием
Старый 20.04.2012, 08:04   #12
sentenso
 
Регистрация: 19.11.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Баламут Посмотреть сообщение
Ну хорошо, создана. Но ведь это еще не значит, что доступна. Напиши в Unit1 следующее:

Код:
implementation

uses Unit2;
Дело не в этом, это всё уже давно прописано...
sentenso вне форума Ответить с цитированием
Старый 20.04.2012, 08:10   #13
sentenso
 
Регистрация: 19.11.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от phomm Посмотреть сообщение
Форма хоть и "должна", но надо знать, что в программе преимущественно последовательно действия происходят, а Вы неаккуратно вклиниваетесь.
Качаем телепатию:
Перенесите вызов процедуры LevelCreate из обработчика Form1Create в более подходящий для такого случая Form1Show или Form1Activate
и будет Вам счастье )
Совет: выкинуть имейджи, формы и т.п. требуху, оставить только 1 форму и списки/массивы картинок, написать несколько процедур вывода изображения на форму, в зависимости от текущего "игрового окна"
Плюс советую проштудировать http://programmersforum.ru/showthread.php?t=1206 . Ну и советую темы по играм в разделе игр создавать.
Советую больше внимания обратить чистоте кода и независимости подсистем. Например, глобальные переменные - очень плохо способствуют независимости. Общение между формами так как Вы привели - достаточно нелогично - раз форма родитель компонентам - пусть они на ней создаются.
Процедуры лучше обратить в методы некоего класса, (а большинство глоб. переменных - в его поля) , получится некий game-класс, ну и желательно чтобы гейм-класс вообще не знал ничего о форме, форма только должна запрашивать от гейма что ей отобразить.
Спасибо огромное, я Ваш должник!
sentenso вне форума Ответить с цитированием
Старый 20.04.2012, 09:21   #14
kashirin.p
Подтвердите свой е-майл
 
Регистрация: 04.04.2012
Сообщений: 37
По умолчанию

Цитата:
Сообщение от phomm Посмотреть сообщение
Форма хоть и "должна", но надо знать, что в программе преимущественно последовательно действия происходят, а Вы неаккуратно вклиниваетесь.
Качаем телепатию:
Перенесите вызов процедуры LevelCreate из обработчика Form1Create в более подходящий для такого случая Form1Show или Form1Activate
и будет Вам счастье )
Совет: выкинуть имейджи, формы и т.п. требуху, оставить только 1 форму и списки/массивы картинок, написать несколько процедур вывода изображения на форму, в зависимости от текущего "игрового окна"
Плюс советую проштудировать http://programmersforum.ru/showthread.php?t=1206 . Ну и советую темы по играм в разделе игр создавать.
Советую больше внимания обратить чистоте кода и независимости подсистем. Например, глобальные переменные - очень плохо способствуют независимости. Общение между формами так как Вы привели - достаточно нелогично - раз форма родитель компонентам - пусть они на ней создаются.
Процедуры лучше обратить в методы некоего класса, (а большинство глоб. переменных - в его поля) , получится некий game-класс, ну и желательно чтобы гейм-класс вообще не знал ничего о форме, форма только должна запрашивать от гейма что ей отобразить.
+10 очков навыка телепатия))
kashirin.p вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод массива изображений TBitMap на форму для дальнейшей работы yachsmit Общие вопросы Delphi 6 28.01.2011 11:56
Размещение процедур в другом модуле Teor Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 12.12.2010 14:57
Как обратиться к переменой в другом модуле. nusik Общие вопросы C/C++ 5 02.07.2009 14:56
вызвать метод класса, находящегося в другом модуле zalum Общие вопросы Delphi 4 06.05.2009 08:47