Вниз
Скачать: CL | DM;

Динамическая панель   Найти похожие ветки 

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
6-15198
/*Drive*/
2002-11-08 09:24
2003.01.06
ПОМОГИТЕ !!!


14-15207
Anatoly Podgoretsky
2002-12-15 10:50
2003.01.06
Именинники 15 декабря


1-15095
vicheslav
2002-12-21 14:36
2003.01.06
Excel как можно получить выделеный диапазон?


3-14905
adolf_99
2002-12-13 00:14
2003.01.06
Помогите


14-15268
Anatoly Podgoretsky
2002-12-13 23:43
2003.01.06
Именинники 14 декабря




   Наверх