![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 24.06.2009
Сообщений: 216
|
![]()
В общем необходимо реализовать в MDI приложении панельку, которая бы выполняла функции подобные панели задач в Windows, а именно:
1. создание кнопки соответствующей открытой дочерней форме 2. активация дочерней формы по щелчку связанной с ней кнопкой 3. удаление соответствующей кнопки при закрытии окна Как создать программно кнопку и присвоить ей заголовок с иконкой я разобрался, а вот как сделать так чтобы при щелчке на определенной кнопки, становилась активной определенная дочерняя форма, а так же удалить кнопку после закрытия дочерней формы, я не могу разобраться. Помогите пожалуйста. Либо может есть какой-то компонент, выполняющий эту задачу??? Заранее спасибо!
Водку мы пьем для запаха - а дури нам своей хватает!
|
![]() |
![]() |
![]() |
#2 | |
Пользователь
Регистрация: 09.07.2009
Сообщений: 42
|
![]() Цитата:
Вернее работает на создание, но не на удаление. Сейчас ещё разбираюсь, думаю вечером выложу. Да, я использовал не вкладка, а тулбар и на нём создавал кнопки. |
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 24.06.2009
Сообщений: 216
|
![]()
Zo0M, спасибо огромное, буду очень признателен за помощь. Только вот если с тулбаром, тогда нужно чтобы если была активная форма, то соответствующая ей кнопка тоже становилась нажатой.
Водку мы пьем для запаха - а дури нам своей хватает!
Последний раз редактировалось Vit@L; 18.12.2009 в 07:16. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 01.02.2007
Сообщений: 785
|
![]()
У меня как-то возникла задача - организовать в приложении кучу страничек. Использовал PageControl. Но он некрасивый. Надо было скрыть отображение вкладок. Нашел вследующее решение в виде компонента:
Код:
Изо всей благодати
В руках крепко сжатых Я донесу только капли |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 24.06.2009
Сообщений: 216
|
![]()
Ребята, спасибо большое всем тем, кто не прошел мимо сей темы. Я вроде бы разобрался с этой задачей сам. Стиль вкладок сделал кнопочный и поместил в самый низ родительской формы (пример как в 1С). Вот что у меня получилось:
1. Создание вкладки: Код:
Код:
Код:
Код:
Фу-у-у (вытирая пот со лба) ну вроде бы все. Может кому-то тоже пригодиться, пользуйтесь на здоровье ![]() 09:17 Кстати, нет, если форм получается больше 2-х то этот код работает не корректно на удаление. В общем вопрос остается открытым. У нас принято пользоваться кнопочкой "Правка", дабы не плодить посты подряд, друг за другом. Модератор
Водку мы пьем для запаха - а дури нам своей хватает!
Последний раз редактировалось mihali4; 18.12.2009 в 12:45. |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 06.08.2007
Сообщений: 2,183
|
![]()
Лежит компонент тут http://decoding.narod.ru/download/mycomponent/main.html
Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 24.06.2009
Сообщений: 216
|
![]()
Модераторов прошу меня простить за многочисленные посты.
Alter, спасибо огромное за компонент, очень выручили.
Водку мы пьем для запаха - а дури нам своей хватает!
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 151
|
![]()
Для выделения дочерней формы при нажатии на вкладку я делаю так:
При создании вкладки её полю Tag присваиваю ссылку на требуемую форму. Выглядит это примерно так: Код:
Код:
Подобный подход весьма прост и лично я им пользуюсь в простых случаях, когда неохота заморачиваться на создание всяких списков для хранения кучи перекрёстных ссылок внутри компонентов. |
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 24.06.2009
Сообщений: 216
|
![]() Цитата:
Спасибо!
Водку мы пьем для запаха - а дури нам своей хватает!
|
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 151
|
![]()
Это работает примерно так:
TaskBar.zip Правда там есть один нерешённый момент, а именно frmChild.Show не активизирует найденное окно. Не знаю в чём причина. И для упрощения кода я перенёс закрытие вкладки внутрь дочернего окна (путём добавления св-ва TfrmChild.LinkedTab). В общем, скачаете - разберётесь. ![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как получить список окон кнопок которые появляются на панели задач? | Paul Hindenburg | Win Api | 6 | 20.02.2009 09:58 |
MDI приложения и PageControl.... | maLoy*508 | Общие вопросы Delphi | 2 | 04.04.2008 02:28 |
Открытие файлов в MDI-приложении | Eofol | Общие вопросы Delphi | 2 | 20.12.2007 22:05 |
Как сделать Панель задач для MDI окошек своего приложения? | Angel86rus | Общие вопросы Delphi | 1 | 04.10.2007 15:15 |
Как создать программу-панель (как панель Msoffice), чтобы была поверх всех окон | Romanbl4 | Общие вопросы Delphi | 6 | 27.06.2007 17:23 |