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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.09.2007, 01:14   #1
Avron
 
Аватар для Avron
 
Регистрация: 05.09.2007
Сообщений: 7
Вопрос Как программно перечислить все формы приложения?

Здравствуйте. Как можно заполучить все формы моего приложения. По идее, они должны храниться в каком-то массиве. Я хочу, допустим все формы своего приложения сделать синим цветом (программно). Для этого мне нужно сделать такой цикл.
for i := 1 to FormsCount Do
Form[i].Color:=clBlue;

Можно ли это сделать и что писать вместо FormsCount и Form[i]?

Заранее благодарен.
Avron вне форума Ответить с цитированием
Старый 05.09.2007, 08:18   #2
UnD)eaD)Snake
Форумчанин Подтвердите свой е-майл
 
Аватар для UnD)eaD)Snake
 
Регистрация: 07.07.2007
Сообщений: 241
По умолчанию

Ты незнаешь сколько у тебя форм в программе?
UnD)eaD)Snake вне форума Ответить с цитированием
Старый 05.09.2007, 08:21   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

[I]var i:integer;
begin
//********* FOR ******************

for i:=0 to Screen.FormCount-1 do
begin
caption:=caption+' '+Screen.Forms.Caption;
end;
//******* END FOR ****************{}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.09.2007, 08:29   #4
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

2 Stilet: поправка:
Код:
Screen.Forms[i].Caption
Alex21 вне форума Ответить с цитированием
Старый 07.09.2007, 02:48   #5
Ring0Sn
Форумчанин
 
Аватар для Ring0Sn
 
Регистрация: 06.09.2007
Сообщений: 239
По умолчанию

Цитата:
Здравствуйте. Как можно заполучить все формы моего приложения. По идее, они должны храниться в каком-то массиве. Я хочу, допустим все формы своего приложения сделать синим цветом (программно). Для этого мне нужно сделать такой цикл.
for i := 1 to FormsCount Do
Form[i].Color:=clBlue;

Можно ли это сделать и что писать вместо FormsCount и Form[i]?

Заранее благодарен.
Можно , пишем так:
Код:
var
  i: integer;
begin
  for i:=0 to Application.ComponentCount-1 do
    if Application.Components[i] is TForm then
      (Application.Components[i] as TForm).Color:= clBlue;
end;
Ring0Sn вне форума Ответить с цитированием
Старый 07.09.2007, 08:51   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Alex21, верно, чето упустил пока с головы постил )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как программно удалить компонент от формы или другого компонента (контейнера)? SkAndrew Общие вопросы Delphi 3 27.05.2008 15:20
Делаю сайты, пишу маленькие/большие скрипты. Пишу веб-приложения и приложения под Windows. SkyM@n Фриланс 3 29.12.2007 16:21
Скрытие главной формы во время работы приложения Gorin Общие вопросы Delphi 7 23.08.2007 19:44
Запуск приложения и активность формы fuv Win Api 3 11.05.2007 20:30
можно ли использовать визуальные компоненты, если у приложения нет формы? Holly1444 Общие вопросы Delphi 8 19.11.2006 16:21