![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| TP@MB@Y |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: нет Всего: 4 |
В своей программ я реализовал панель, которую таскаю мышкой куда захочу... Но только в пределах формы. Но было бы просто замечательно, если бы сделать возможным перетаскивать панельку за пределы формы, т.е. в любую точку экрана(это сэкономит мне много рабочего места в интерфейсе)
Вот как я реализовываю перетаскивание:
Это сообщение отредактировал(а) TP@MB@Y - 10.5.2006, 23:35 |
|||
|
||||
| Rouse_ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 469 Регистрация: 23.4.2005 Репутация: 5 Всего: 29 |
Говори что ты на заголовке, и будешь таскать куда хочешь...
|
|||
|
||||
| TP@MB@Y |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: нет Всего: 4 |
Rouse_, поясни пожалуста
|
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Это TPanel что-ли? Если так, то почему бы просто не установить
и сможешь тягать эту панель даже за пределы формы -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| TP@MB@Y |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 370 Регистрация: 18.12.2004 Где: Москва Репутация: нет Всего: 4 |
Poseidon, спасибо, работает
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Можно. Через SetWindowLong - изменить Style при окончании драгэндока.
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Snowy, это здесь не пройдет. После создания окна такие стили не работают. VCL стили окна меняет так
т.е. пересоздает окно для Value разрешены только два варианта bsNone и bsSingle так что нужно создовать наследника и перекрыть функцию. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Позволю себе с Вами не согласиться.
То, что окно пересоздается, совсем не значит, что оно перестает существовать. Просто меняет владельца.
Добавлено @ 16:21 Здесь Panelka - это панель с установленным драгэндоком. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Snowy,
Очень интересно! Не знал... Однако этот код делает заглоловок неактивным, не удаляя его, тоже самое происходит если применить подобный код к форме. Напимер, во время работы программы (после application.run) уже нельзя удалить таким образом кнопки свернуть и развернуть. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
???
Какой заголовок? У меня после этого кода не остается никакого заголовка. Добавлено @ 16:58 Прикладываю проект для D7 Присоединённый файл ( Кол-во скачиваний: 8 )
Panelka.zip 7,15 Kb |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Snowy, пробовал ваш экзешник - ситуация анологичная заголовок неактивный, но вполне видимый (синяя полоска с крестиком)
Тестировал на Microsof Windows 2000 5.00.2195 Service Pack 4. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Тогда немного поправим - сделаем по честному.
У меня на 2003 отлично работает. Добавлено @ 10:30 Пришиваю новый вариант. В нем панелька еще и обратно ставится. Присоединённый файл ( Кол-во скачиваний: 10 )
Panelka.zip 7,16 Kb |
|||
|
||||
| Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
У меня как и у Snowy, всё работает как требуется.
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Snowy, тот же эффект !
Кстати, вариант с "and not WS_DLGFRAME" - я уже раньше пробовал с тем же результатом. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Под XP и 2003 на D7 работает корректно.
Я бы рад поправить, но у меня данная проблема не возникает... |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Yanis, какая винда
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
Win XP sp2
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Ага. Нашел. Если отключить стили - заголовок остается.
Щас посмотрим... Добавлено @ 10:49 Без стилей нужно ресайзнуть маленько, чтобы эффект сработал.
Добавлено @ 10:50 Можно и более аккуратно сделать, просто этот способ самый короткий. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |