![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
закрыть окно
9899100 © (2007-12-05 15:28:00)Уважаемые! подскажите, надо закрыть окно, когда пользователь вывел курсор мышки за пределы окна, возможно это сделать?? и если да то как??
у TForm нет события типа onMouseLeave :(
Игорь Шевченко (2007-12-05 16:59:00) [1]SetCapture/ReleaseCapture
Eraser (2007-12-05 16:34:00) [2]
> 9899100 (05.12.07 16:10) [7]
ээ.. если форма пустая, то CM_CM_MOUSELEAVE вызываться не должен ;)
{RASkov} (2007-12-05 16:12:00) [3]> [7] 9899100 (05.12.07 16:10)
Эх... точно.... у меня-то в голове пустая форма :)
9899100 (2007-12-05 16:10:00) [4]
> {RASkov}
нее, проект новый ничего акромя этого там нету :)
видимо Eraser прав
{RASkov} (2007-12-05 16:09:00) [5]> [5] 9899100 (05.12.07 16:08)
PtInRect
{RASkov} (2007-12-05 16:08:00) [6]> [2] 9899100 (05.12.07 15:53)
> оно закрывается как только я навожу мышку на открытое окно
> :((
> чего не так??
:)
Не должно.... сделай новый проект и проверь.
Возможно у тебя остались "старые попытки" закрытия, вот они и "косячат"....
Но данный [1] способ "не надежный" из-за "ненадежности" приведенных сообщений....
Попробуй мышку убать с формы резко)
9899100 (2007-12-05 16:08:00) [7]а как это узнать ??
что у казатель над компонентом этой формы ?
Eraser (2007-12-05 15:56:00) [8]
> 9899100 (05.12.07 15:53) [2]
CM_CM_MOUSELEAVE срабатывает как только указатель переходит на какой-то другой визуальный компонент, даже если он находится на форме.
9899100 (2007-12-05 15:53:00) [9]оно закрывается как только я навожу мышку на открытое окно
:((
чего не так??
procedure TForm2.CMMouseLeave;
Begin
Close;
End;
{RASkov} (2007-12-05 15:36:00) [10]> [0] 9899100 (05.12.07 15:28)
> у TForm нет события типа onMouseLeave
Добавь
TForm1 = class(TForm)
private
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
{ Private declarations }
public
{ Public declarations }
end;