Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Вниз

Обработка события входа курсора мыши на компонент и выхода!   Найти похожие ветки 

 
Витёк   (2005-08-16 01:12) [0]

Помоги пожалуйста, как мне например, сделать так: когда я навожу курсор мыши на TImage, в TImage загружалась, например "C:\1. bmp", а когда я вывожу курсор мыши из TImage, в ТImage загружалась "C:\2.bmp"! Только не ONMouseMove!


 
Kerk ©   (2005-08-16 01:13) [1]

Баян


 
Наиль ©   (2005-08-16 01:55) [2]

Здесь этот вопрос обсуждается постояно.
Чтобы не загружать твои мозги информацией о message, приведу примитивный пример:
type
 TForm1 = class(TForm)
   Panel1: TPanel;
   Image1: TImage;
   procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
   procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
     Y: Integer);
 private
  a:byte;
 end;
var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
if a=1 then Exit;
a:=1;
Image1.Picture.LoadFromFile(ProgramPath+"1.bmp");
end;

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
if a=2 then Exit;
a:=2;
Image1.Picture.LoadFromFile(ProgramPath+"2.bmp");
end;

И форма:
object Form1: TForm1
 Left = 216
 Top = 192
 Width = 220
 Height = 250
 Caption = "Form1"
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = "MS Sans Serif"
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
 object Panel1: TPanel
   Left = 32
   Top = 40
   Width = 153
   Height = 145
   BorderWidth = 2
   TabOrder = 0
   OnMouseMove = Panel1MouseMove
   object Image1: TImage
     Left = 3
     Top = 3
     Width = 147
     Height = 139
     Align = alClient
     OnMouseMove = Image1MouseMove
   end
 end
end


 
Наиль ©   (2005-08-16 02:19) [3]

Второй пример не сложнее:
type
 TForm1 = class(TForm)
   Image1: TImage;
   Timer1: TTimer;
   procedure Timer1Timer(Sender: TObject);
 end;
var
 Form1: TForm1;
 a:byte=2;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
Var
cnt:TControl;
s:string;
begin
cnt:=ControlAtPos(ScreenToClient(Mouse.CursorPos),true);
s:="";
if cnt<>nil then s:=cnt.Name;
if (s<>"Image1") and (a=2) then Exit;
if (s="Image1") and (a=1) then Exit;
a:=3-a;
if a=1
 then s:="1.bmp"
 else s:="2.bmp";
Image1.Picture.LoadFromFile(s);
end;


Форма:
object Form1: TForm1
 Left = 519
 Top = 240
 Width = 220
 Height = 250
 Caption = "Form1"
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = "MS Sans Serif"
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
 object Image1: TImage
   Left = 48
   Top = 64
   Width = 121
   Height = 97
 end
 object Timer1: TTimer
   Interval = 100
   OnTimer = Timer1Timer
   Left = 160
   Top = 16
 end
end



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.09.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.169 c
4-1121286315
ronyn
2005-07-14 00:25
2005.09.04
Счётчик для Интернета.


1-1123756035
Bios_
2005-08-11 14:27
2005.09.04
Запись процедуры или функции в файл.


2-1123246330
Гость22
2005-08-05 16:52
2005.09.04
Как сменить регистр символа?


8-1114452330
DolQ
2005-04-25 22:05
2005.09.04
Image


14-1123680424
oldman
2005-08-10 17:27
2005.09.04
А за слоганом не уследили...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский