Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

мышка на форме...


XfroSt ©   (2005-02-20 12:52:00) 

Вот потребовалось сделать такую форму по типу панели быстрого запуска windows. Прилепил ее к границе экрана. Поставил borderstyle в bsNone. Добавил вот такой код :
procedure TForm1.FormDeactivate(Sender: TObject);
begin
 ReleaseCapture;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
 If GetCapture = 0 then
   SetCapture(Form1.Handle);
 if PtInRect(Rect(Form1.Left,
                  Form1.Top,
                  Form1.Left + Form1.Width,
                  Form1.Top + Form1.Height),
                  ClientToScreen(Point(x, y))) then
 Form1.Width := 60 else
 Form1.Width := 5;
end;

Но что то не работает. Т.е. вообще мышка неотслеживается на форме.
Что делать?
Может можно как то по другому скрывать и открывать форму при наведении мышки?


Чапаев   (2005-02-21 12:53:00) [1]

Когда-то через хук делал...


Knight   (2005-02-21 12:10:00) [2]


> [6] Юрий Зотов ©   (21.02.05 06:08)
> А если делать правильно, то надо использовать сообщения
> ABM_xxx и функцию SHAppBarMessage.

Спасибо, тоже запишу... едва ли пригодиться, но для общего развития, пусть будет :)


Юрий Зотов   (2005-02-21 06:08:00) [3]

> XfroSt   (20.02.05 12:52)

А если делать правильно, то надо использовать сообщения ABM_xxx и функцию SHAppBarMessage.


XfroSt   (2005-02-21 02:03:00) [4]

спасибо это как раз то что мен нужно.


Knight   (2005-02-20 23:19:00) [5]

Самое простое, это по таймеру отслеживать положение мыши, если она упирается в нужный край окна, показывать панель... тогда, вообще, можешь её спрятать, даже полоска будет не нужна... или эхота заморочек, то обрати внимание на WM_MOUSEHOVER, WM_MOUSELEAVE...


XfroSt   (2005-02-20 21:09:00) [6]

Мне наджо сделать приложение по типу панели быстрого запуска Windows (Что было сбоку маленькой линией а когда мышку наводишь показывалось приложение). Вот я и думаю как это сделать попробовал отслеживать положение мышки на форме и от этого менять ее ширину - получилась гадость(Кнопки срабатывают тока на второй клик)...
Вопрос: как это сделать чтотбы контролы нормально функционировали.?


Knight   (2005-02-20 19:13:00) [7]


> XfroSt   (20.02.05 12:52)

Название травы в студию... %)))


debuger   (2005-02-20 16:58:00) [8]

Я раньше считал себя программистом, но ваш вопрос очень смутно понял(возможно не только я). Переформулируйте его пояснее, может ответов будет побольше.


Наверх

Титульная страница Поиск, карта сайта Написать письмо