Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
3 / 3 / 0
Регистрация: 22.02.2011
Сообщений: 46

Один ToolBar в MDI приложении

13.02.2013, 22:17. Показов 1336. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.

Подскажите где почитать или подскажите:

Создаю MDI-приложение в котором на главной форме размещены ToolBar-ы с кнопками на все случаи жизни. При отсутствии дочерних окон определенные ToolBar-ы спрятаны. При активации дочерних форм определенные ToolBar необходимо отобразить. Кнопки на одном из ToolBar-а может использоваться разными дочерними окнами, вернее обработка событий на нажатие кнопок ToolBar-а в каждом окне своя. Определенные кнопки, обработка событий которых не определена в активном дочернем окне, могут быть неактивны для кликанья.

Вопрос:
Например рассмотрим вариант на ToolBar-е есть кнопки "Создать", "Обновить", "Фильтр". при отсутствии активных дочерних окон все кнопки имеют свойство Enabled=false. При открытии формы в которой есть обработка события "Обновить" соответствующая кнопка становится активной и при ее нажатии вызывается метод активного дочернего окна. Открывается другое дочернее окно в котором можетотсутствовать обработка события "Обновить" но "активны" другие кнопки "Создать" и "Фильтр". Ну и так далее.

Заранее спасибо большое всем, кто поможет разобраться. Чувствую, что это делается легко но не могу разобраться.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.02.2013, 22:17
Ответы с готовыми решениями:

Затемнение в MDI приложении
Доброго дня! Искал недавно варианты затемнения формы со всеми компонентами с отображением прогрессбара в процессе выполнения каких либо...

Баг в MDI приложении
Создал MDI-приложение. Положил на дочернюю форму ValueListEditor... После запуска, если щелкнуть по левой кнопке мыши в область этого...

CTreeView в MDI приложении.
Доброе утро. Вообще в работе дел с MFC как правило не имею,чаще Win API ,системное. А тут вдруг попалась следующая задачка ,время...

3
3 / 3 / 0
Регистрация: 22.02.2011
Сообщений: 46
25.02.2013, 16:45  [ТС]
Я так понял либо вопрос не понятен, либо такого никто не делал... Жаль.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
25.02.2013, 23:21
в зависимости от определенного условия скрываете кнопки или делаете их Enabled=false - в чем проблема?
C++
1
2
3
4
5
6
if (активных_дочерних_окон==0) {
  все_кнопки->Enabled=false; // можно пройтись динамическим кастом
}
else if (другое_событие/условие) {
  кнопки_с_определенным_тегом->Enabled=true;
}
Для более конкретного ответа кто-то должен фактически написать вам программу с тулбарами, будем надеяться, кто-нибудь да напишет. А пока - покопайтесь здесь:
Библиотека VCL и сопутствующие материалы
1
3 / 3 / 0
Регистрация: 22.02.2011
Сообщений: 46
26.02.2013, 21:33  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
в зависимости от определенного условия скрываете кнопки или делаете их Enabled=false - в чем проблема?
C++
1
2
3
4
5
6
if (активных_дочерних_окон==0) {
  все_кнопки->Enabled=false; // можно пройтись динамическим кастом
}
else if (другое_событие/условие) {
  кнопки_с_определенным_тегом->Enabled=true;
}
Для более конкретного ответа кто-то должен фактически написать вам программу с тулбарами, будем надеяться, кто-нибудь да напишет. А пока - покопайтесь здесь:
Библиотека VCL и сопутствующие материалы
Спасибо за ссылку - ранее просмотрел эти материалы. программу писать не нужно, просто хотел услышать намек в какую сторону копать. Насколько я понял на главной форме "кинуть" ActionList в событии OnUpdate которого и производить "включение"/"выключение" кнопок основного тулбара.
У меня другой вопрос - как отлавливать событие OnExecute кнопки тулбара в каждом конкретном окне вызывать свою функцию. Допустим обработка OnExecute кнопки "Фильтр" обрабатывается разными окнами вызывая свою функцию Refresh() объявленную в каждом окне.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.02.2013, 21:33
Помогаю со студенческими работами здесь

Окна в MDI приложении.
Несколько вопросов в приложении MDI есть несколько child окон. 1) Надо сделать чтобы одно из них всегда было выше других (не...

DBLookupComboBox в MDI приложении
Здравствуйте! Создаю простую базу данных в виде MDI приложении. Есть дочернее окно с таблице в которой список товаров. Три колонки...

MainMenu в MDI-приложении
В новом проекте, создаю 3 формы. Затем на каждую из них кидаю компонент MainMenu.После задаю в нём пункты. Запускаю, как видно, всё...

Подключении базы в MDI приложении
Пытаюсь тут сделать приложении с MDI контейнером MainForm, который вмещает в себя прочие окна с вызовом таблиц БД. Начиная со строки 109 и...

Размер окна в MDI приложении
Привет. В примерах не нашел как по умолчанию задается размер нового окна . Как задать размер? А то при создании окошко полностью...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
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. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru