
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
19.04.2007, 16:53
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Хотелось бы перебрать все формы проекта ну например в цикле и менять их цвет к примеру ))) Есть класс Screen !!! Но он работает только для форм которые находяться в данныый момент на экране. Какие есть идеи ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 17:48
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Занести указатели на все классы формы проекта в список, и при необходимости пройтись по списку и менять их свойства. Если же формы создаются и удаляются из памяти динамичесски - создать файл настроек для всех форм, который будет подчитываться при создании класса формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:14
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
LexogenЗанести указатели на все классы формы проекта в список, и при необходимости пройтись по списку и менять их свойства. Если же формы создаются и удаляются из памяти динамичесски - создать файл настроек для всех форм, который будет подчитываться при создании класса формы. Хм вот мне интересно а как я занесу их в список ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:15
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Ах да я почему хочу так перебирать потому что форм многовато ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:25
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Проект в в каком окружении? Visual, Builder? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:26
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
LexogenПроект в в каком окружении? Visual, Builder? C++ Builder ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:31
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!k LexogenЗанести указатели на все классы формы проекта в список, и при необходимости пройтись по списку и менять их свойства. Если же формы создаются и удаляются из памяти динамичесски - создать файл настроек для всех форм, который будет подчитываться при создании класса формы. Хм вот мне интересно а как я занесу их в список ? Как я понимаю каждый клас формы наследуется от какого то базового класса у которого есть такие общие для всех форм свойства как цвет формы и т.п.. Тогда: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 18:33
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!k LexogenПроект в в каком окружении? Visual, Builder? C++ Builder У Вас в главном cpp файле есть список названий классов всех форм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.04.2007, 20:16
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Lexogen Begem0t!k LexogenПроект в в каком окружении? Visual, Builder? C++ Builder У Вас в главном cpp файле есть список названий классов всех форм. На самом деле это долго мне будет в список заносить то 89 форм ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 01:04
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
ну а что вы хотели? а 89 это не так уж и много. занесете все указатели в вектор а потом будете делать все что захотите с этими формами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 10:47
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!kНа самом деле это долго мне будет в список заносить то 89 форм ... Может поищите в экземпляре класса TApplication - Application, формы же создаются с помощью этого класса, может у него есть методы для получения списка форм... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 13:06
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Lexogen Begem0t!kНа самом деле это долго мне будет в список заносить то 89 форм ... Может поищите в экземпляре класса TApplication - Application, формы же создаются с помощью этого класса, может у него есть методы для получения списка форм... Поискал не нашел (( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 13:38
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!k Lexogen Begem0t!kНа самом деле это долго мне будет в список заносить то 89 форм ... Может поищите в экземпляре класса TApplication - Application, формы же создаются с помощью этого класса, может у него есть методы для получения списка форм... Поискал не нашел (( Плохо смотрели. Достал из самого старого сундука Builder, сдул пыль, запустил, нажал Help, посмотрел свойства класса TApplication... Наваяйл быстро: Код: plaintext 1. Вот и ответ! Перебрать все компоненты, если, например, бызовый класс TForm, или можна привести через dynamic_cast к класу TForm - значит клас формы. И делай с ним что хочеш через указатель! А далее пожалуйста сами! На вопросы: "А как узнать клас родитель?","Как привести к типу... ?" отвечать не буду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 17:39
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Lexogen Begem0t!k Lexogen Begem0t!kНа самом деле это долго мне будет в список заносить то 89 форм ... Может поищите в экземпляре класса TApplication - Application, формы же создаются с помощью этого класса, может у него есть методы для получения списка форм... Поискал не нашел (( Плохо смотрели. Достал из самого старого сундука Builder, сдул пыль, запустил, нажал Help, посмотрел свойства класса TApplication... Наваяйл быстро: Код: plaintext 1. Вот и ответ! Перебрать все компоненты, если, например, бызовый класс TForm, или можна привести через dynamic_cast к класу TForm - значит клас формы. И делай с ним что хочеш через указатель! А далее пожалуйста сами! На вопросы: "А как узнать клас родитель?","Как привести к типу... ?" отвечать не буду. Это я видел ))) Но у меня ComponentCount = 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.04.2007, 18:03
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!k Это я видел ))) Но у меня ComponentCount = 2 А узнать почему так при наличии множества форм не пробовали? Зайдите в меню Project->Options на вкладку Forms и посмотрите сколько форм в списке Auto-create forms, а сколько Available forms. Делайте выводы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.04.2007, 15:21
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Lexogen Begem0t!k Это я видел ))) Но у меня ComponentCount = 2 А узнать почему так при наличии множества форм не пробовали? Зайдите в меню Project->Options на вкладку Forms и посмотрите сколько форм в списке Auto-create forms, а сколько Available forms. Делайте выводы. Все 90 там ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.04.2007, 17:27
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!kВсе 90 там Не уточните где именно, в списке Auto-create, или в Available forms? При создании формы методом класса TApplication в главном cpp файле программы форма добавляется в свойство components этого класса. Т.е. сколько экземпляров классов форм создалось, столько будет и ComponentCount. Если же формы не являются Auto-create, то в классе TAppplication присутсвовать не будут. Если же форма не Auto-create, и создалась с помощью метода класса TApplication CreateForm, то только тогда указатель на класс формы будет присутствовать в классе TApplication. Например: Одна форма (главная) в списке Auto-create, все остальные в Available forms. При старте приложения метод ComponnentCount вернет количество 2. Во время работы приложения создадим еще одну форму через Application->CreateForm. Тогда ComponnentCount будет инкриментированно. Т.е. В Вашем случае для всех созданных форм можна что то менять через класс TApplication (перебор Components), а для еще не созданных можна иметь или ini-файл с общими настройками форм, который они при создании сами будут подчитывать и в методе Create класса формы будут устанавливаться необходимые свойста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.04.2007, 07:32
|
|||
|---|---|---|---|
Как перебрать все формы проекта ???? |
|||
|
#18+
Lexogen Begem0t!kВсе 90 там Не уточните где именно, в списке Auto-create, или в Available forms? При создании формы методом класса TApplication в главном cpp файле программы форма добавляется в свойство components этого класса. Т.е. сколько экземпляров классов форм создалось, столько будет и ComponentCount. Если же формы не являются Auto-create, то в классе TAppplication присутсвовать не будут. Если же форма не Auto-create, и создалась с помощью метода класса TApplication CreateForm, то только тогда указатель на класс формы будет присутствовать в классе TApplication. Например: Одна форма (главная) в списке Auto-create, все остальные в Available forms. При старте приложения метод ComponnentCount вернет количество 2. Во время работы приложения создадим еще одну форму через Application->CreateForm. Тогда ComponnentCount будет инкриментированно. Т.е. В Вашем случае для всех созданных форм можна что то менять через класс TApplication (перебор Components), а для еще не созданных можна иметь или ini-файл с общими настройками форм, который они при создании сами будут подчитывать и в методе Create класса формы будут устанавливаться необходимые свойста. Все формы в разделе AutoCreate! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.04.2007, 10:14
|
|||
|---|---|---|---|
|
|||
Как перебрать все формы проекта ???? |
|||
|
#18+
Begem0t!k Все формы в разделе AutoCreate! Шаманство :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&mobile=1&tid=2028984]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 241ms |
| total: | 400ms |

| 0 / 0 |
