Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];
ВнизДинамическая панель Найти похожие ветки
← →
zxz (2002-12-22 22:41) [0]Здравствуйте.
Кто подскажет как сделать такую панель, чтобы она плавно появлялась при попадании мышки в определенное место формы и плавно исчезала при выходе мышки из области панели (какбы выдвигалась и задвигалась)???
← →
Song (2002-12-23 08:56) [1]ну дык TPanel.Left/Top
← →
RWolf (2002-12-23 10:00) [2]В таймере следить за позицией мышки (GetCursotPos);
если зашла в требуемую область - в том же таймере выдвинуть панель в несколько приемов (изменением ее позиции/размеров);
если вышла - задвинуть обратно.
Можно еще поиграться с API функцией прокрутки окна (ScrollWindow).
← →
OlDemon (2002-12-23 10:09) [3]ИМХО лучше не в таймере, а при попадании на область по CM_MOUSEENTER
← →
ScableR (2002-12-23 10:12) [4]После поподания ессно запускать таймер.
← →
Tano (2002-12-23 11:24) [5]Недавно оставлял в форуме кусок кода для изменения кнопки при входе/выходе мыши. Поищи по моему нику. В обработчике входа мыши в компонент:
если не стоит флаг "идет перемещение панели" (хоть глобальную переменную Boolean), то
запускай таймер(или см.ниже), которым наращивай нужную координату
и установи флаг "идет перемещение панели" (это против глюков при анимации).
Когда панель доползет до нормы - сбрось флаг.
При выходе - аналогично (в том же порядке, только перемещать панель в другую строну).
Вместо таймера при перемещении панели можно просто использовать цикл (for, while...), где меняешь координату, только вставь внутрь Application.ProcessMessages, чтобы прорисовывались изменения.
← →
Tano (2002-12-23 11:29) [6]Нашел:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1040294919&n=0
← →
zxz (2002-12-24 16:05) [7]всем спасибо ...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c