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

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

Исчезновение


Lonix ©   (2007-02-22 23:49:00) 

Как сделать так чтобы когда наводишь мышкой на картинку она исчезала, точнее я знаю этот код вот он:
procedure TForm1.Image6MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
Image6.Visible:=false;
end;
но после  как курсор мышки убираешь картинка обратно не возвращается, как сделать чтобы она обратно возвращалась?


sniknik   (2007-02-23 01:36:00) [1]

> но после  как курсор мышки убираешь картинка обратно не возвращается
нет сообщений для невидимого контрола...
не получится так, нужен управляющий контрол, например панель, а картинка уже не ней растянутая по всей панели, у панели убраны бордюры, видимость будет та что нужно.


...
type
 TMyPanel = class(TPanel)
 private
   procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
   procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
 end;

 TPanel = class(TMyPanel);

 TForm1 = class(TForm)
   Panel1: TPanel;
   Image1: TImage;
 private
 public
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TMyPanel.CMMouseEnter(var Message: TMessage);
begin
 inherited;
 Form1.Image1.Visible:= false;
end;

procedure TMyPanel.CMMouseLeave(var Message: TMessage);
begin
 inherited;
 Form1.Image1.Visible:= true;
 Self.Visible:= true;
end;

...


Германн   (2007-02-23 01:32:00) [2]


> В Делфи для этого и ему подобного введены события

Очепятка. Не события а сообщения.


Германн   (2007-02-23 01:30:00) [3]


> Lonix   (22.02.07 23:49)
>
> Как сделать так чтобы когда наводишь мышкой на картинку
> она исчезала, точнее я знаю этот код вот он:
> procedure TForm1.Image6MouseMove(Sender: TObject; Shift:
>  TShiftState; X,
>  Y: Integer);
> begin
> Image6.Visible:=false;
> end;
> но после  как курсор мышки убираешь картинка обратно не
> возвращается, как сделать чтобы она обратно возвращалась?
>

А подумать если? Или голова только кости и больше ничего? Причём тут MouseMove?
В Делфи для этого и ему подобного введены события CM_MOUSEENTER  и     CM_MOUSELEAVEи введены они в TControl'e! А TImage его наследник.


unknown   (2007-02-23 00:51:00) [4]


> Lonix   (23.02.07 00:18) [2]
>
> там выдает одну страницу

Да ну??

> Может статью знаешь где про это рассказывают?

А вот давай, ты сам поищешь, а?
Хотя нет, вот тебе подсказка
http://www.google.ru/search?hl=ru&q=mouse_leave&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=
Мало?


Lonix   (2007-02-23 00:18:00) [5]

там выдает одну страницу и не чего путного нет. Может статью знаешь где про это рассказывают?


unknown   (2007-02-23 00:08:00) [6]


>
> Lonix   (22.02.07 23:49)

есть такая фишка как mouse_leave.
В http://www.google.com/поищи - найдешь.


Наверх

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