Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/27: Рейтинг темы: голосов - 27, средняя оценка - 5.00
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30

Как получить список всех дочерних форм приложения?

10.03.2010, 19:34. Показов 5786. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как получить список всех дочерних форм приложения?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.03.2010, 19:34
Ответы с готовыми решениями:

Значки на панели задач для всех форм приложения
Всем привет. Вопрос собственно такой. Есть приложение с несколькими формами. Каким образом можно реализовать, что каждая форма будет иметь...

Как сделать так чтобы при открытие дочерних форм (через MainMenu) появлялась только одна вкладка TabSet
Такая ситуация, существует главная форма и дочерние(MDI), как сделать так чтобы при открытие дочерних форм (через MainMenu) появлялась...

Как получить список дочерних форм?
Столкнулся с проблемой,у меня есть главная форма, необходимо закрыть все дочерние формы. Как я понял, для этого необходимо получить список...

13
 Аватар для [XandeR]
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
12.03.2010, 10:53
почему же никто так и не ответил, мне тоже интересно
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
12.03.2010, 11:02
Evg, в многооконном приложении можно получить список открытых окно, а вот список дочерних окон, если я не ошибаюсь, получить нельзя никак... потому что в этом нет необходимости, ведь ты и так видишь свой проект... ну может я и ошибаюсь...
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
12.03.2010, 11:25  [ТС]
Понятно, что я сам согу вести список окон. Сам могу отслеживать последовательность, в которой они активировались (чтобы иметь окна в том порядке, в котором будет переключаться ctrl-tab). Грубо говоря повторять тот список, который уже ведётся в системе. Но почему бы этот список не предоставить программисту, чтобы не изобретать велосипедов? Либо оно зашито где-то глубоко.

В общем, в инете я ничегонайти не смог, тут тоже. так что, судя по всему, придётся ручками формировать список
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
17.03.2010, 21:22  [ТС]
Проверять пока лениво, но похоже, что сие делает функция EnumChildWindows
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
18.03.2010, 09:38
Цитата Сообщение от Evg Посмотреть сообщение
Проверять пока лениво, но похоже, что сие делает функция EnumChildWindows
она перечисляет только созданные, открытые и прорисованные объекты (причем не обязательно окна, а еще и кнопки поля ввода и т.п.)
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
18.03.2010, 13:24  [ТС]
Значит не катит. В любом случае интерфейс слишком не удобен для использования. Создавать ручками список окон гораздо проще

Добавлено через 28 минут
Кстати, такой вот вопрос. Переключение по ctrl-tab и активизация дочернего окна при тыкании в него мышкой - это всё сделано на уровне WinApi или это отрабатывается библиотекой VCL?
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
18.03.2010, 14:09
Цитата Сообщение от Evg Посмотреть сообщение
Значит не катит. В любом случае интерфейс слишком не удобен для использования. Создавать ручками список окон гораздо проще

Добавлено через 28 минут
Кстати, такой вот вопрос. Переключение по ctrl-tab и активизация дочернего окна при тыкании в него мышкой - это всё сделано на уровне WinApi или это отрабатывается библиотекой VCL?
VCL это такая же обертка над WinApi что и MFC, ну чуть попроще (для юзера) сделанная, а окнами и горячими кнопками система управляет, и если не назначены иные действия на горячие кнопки, то система будет управлять, в соответствии со своим алгоритмом.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
18.03.2010, 14:21  [ТС]
В итоге ответ на вопрос какой? Если не делать дополнительных телодвижений (т.е. в билдере нарисовали родительское окно и дочернее и больше ничегоне делаем), то указанными вещами заведует WinApi или VCL/MFC?
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
18.03.2010, 14:25
Цитата Сообщение от Evg Посмотреть сообщение
В итоге ответ на вопрос какой? Если не делать дополнительных телодвижений (т.е. в билдере нарисовали родительское окно и дочернее и больше ничегоне делаем), то указанными вещами заведует WinApi или VCL/MFC?
WinApi
1
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
18.03.2010, 19:11
Evg:
Советую посетить это:
http://worldcpp.vingrad.ru/
Cэкономишь кучу времени о освоении графического интерфейса и многих других вещей,
особенно если скачаешь весь архив.
1
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
18.03.2010, 19:53  [ТС]
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Evg:
Советую посетить это:
http://worldcpp.vingrad.ru/
Cэкономишь кучу времени о освоении графического интерфейса и многих других вещей,
особенно если скачаешь весь архив.
Выборочно потыкался, но с ходу не нашёл ответов на те вопросы, которые остались для меня без ответа. Беглый просмотр скорее говорит о том, что я навряд ли найду там что-то, что не смог бы найти без этого сайта. Но одно могу сказать точно - сайт сделан очень удобно, не то что cyberguru
0
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
18.03.2010, 20:01
Но про функции работы с окнами там точно написано, EnumChild и другие там были.
Там про работу с MFC в Visual C++ хорошо написано, про Builder не читал, может тоже что то есть.
0
0 / 0 / 1
Регистрация: 10.11.2011
Сообщений: 8
24.10.2012, 12:55
Возможно, кому-то и пригодится:

1. С помощью Screen->Forms можно получить список всех видимых форм приложения
2. Главную форму приложения можно получить, используя Application->MainForm
3. Список подчиненных форм или просто доступ к ним можно получить, используя функцию, похожую на:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void GetChildForms(TForm *parentForm)
{
 TComponent *c;
 
 for(int i=0;i<parentForm->ComponentCount;i++)
 {
  c=parentForm->Components[i];
  if(c->InheritsFrom(__classid(TForm))) // компонент - форма?
  {    
   // далее можно поискать подчиненные подчиненных
    GetChildForms((TForm *)c);
   // внести в список или что-то другое
  }
 }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.10.2012, 12:55
Помогаю со студенческими работами здесь

Как получить список всех открытых форм?
subj

Получить список всех форм
Как получить список всех форм?

Механизм закрытия дочерних форм приложения
Добрый день. Пытаюсь сообразить, как грамотно реализовать механизм закрытия дочерних форм приложения. Есть 2 ситуации: 1) Дочерняя...

Изменение цвета фона дочерних форм приложения
В программе имеется главная форма и несколько дочерних форм. При нажатии кнопки в дочерней форме необходимо поменять цвет фона всех...

Получить список всех окон приложения
Может кто нибудь сталкивался с такой ситуацией, нужно получить список всех открытых окон моей программы VS2015 win10


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru