Форум: "KOL";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
ВнизПлавающая панель инструментов Найти похожие ветки
← →
Leonid (2005-06-08 13:21) [0]Здравствуйте!
У меня такой вопрос.
Как можно создать плавающую панель инструментов на подобии плавающей панели инструментов, например, в photoshop"е. Проблема заключается в следующем: я задаю borderStylr := bsToolWindow, FormStyle := fsStayOnTop. Это, конечно, всё просто, но необходимо сделать так, чтобы когда я перевожу фокус на это плавующее окно (к примеру из главной формы), главная форма была "активной". То есть при выполнении каких-то действий в плавающей панели инструментов (нажатия кнопок...) главная форма оставалась активной. Я не могу понять как это можно реализовать?
Заранее благодарен.
← →
r00se © (2005-06-08 17:07) [1]Удалено модератором
← →
GLFox © (2005-06-08 17:15) [2]А нафига надо, чтоб оно было активно? Сделал дело на панели - делай Activate главной формы.
← →
Владимир Кладов (2005-06-08 19:09) [3]Может фотошоп просто не дает свои окнам фокус. И рисует их полностью сам. Правда, у меня старый, версии 3.
← →
Thaddy (2005-06-08 20:26) [4]Correct. Also in newer versions.
Work around:
I store the last focused window and restore it immediately after selection on toolwindow back to where it was, using OnKeyUp en OnMouse handlers. This works good.
← →
Leonid (2005-06-08 22:02) [5]Thaddy, я не совсем понял: Вы имеете ввиду, что когда плавающая форма получает фокус переводить его на главную форму? Если так делать, то заметно как шапка основной формы мелькает, так как всё же на мнгновение она становится неактивной.
Да, кстати, то о чём я спрашиваю реализовано не только в фотошопе, но и во многих других приложениях. Например, если вытащить мышкой панель инструментов из Word", то она (пенель инструментов) превращается в форму как раз такого же типа.
← →
Thaddy (2005-06-08 22:52) [6]I did understand ;)
I will make an example of what you mean. It may be usefull for others too.
← →
Leonid (2005-06-09 10:56) [7]Да, я был бы очень благодарен если бы Вы привели код.
← →
Dimaxx © (2005-06-11 19:42) [8]А вы замечали, что в WinRAR окно с индикатором процесса ВСЕГДА неактивно! Даже если по ТАБ переключаться между кнопками. Это тоже как-то реализовано. Ведь WinRAR написан на с-билдере. Если такой изврат возможен, то почему невозможно сделать окно на главном окне и чтобы они оба были "в фокусе", то есть заголовки окон были одинаковыми.
← →
Leonid (2005-06-11 20:49) [9]Наверное возможно, но как?
Да, кстати, в WinRar"e окно с индикатором процесса дочернее окно.
Вот если бы сделать так, чтобы плавающая панель не была дочерней и была бы ВСЕГДА неактивной, то можно было сделать её BorderStyle:= bsSingle и шапку рисовать вручную, синем цветом, как будто она активна.
← →
SPeller © (2005-06-12 11:12) [10]А если поколдовать с WM_NCACTIVATE?
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c