Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.13;
Скачать: CL | DM;

Вниз

OnMouseEnter, OnMouseLeave   Найти похожие ветки 

 
Дмитрий Минеев   (2003-03-02 14:52) [0]

Как организовать эти штуки. Если через cm_mouseleave и cm_mouseleave, то как это сделать для конкретной компоненты, например для Button?
Есть идея использовать такой код:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure CMMouseEnter(var Msg: TMessage); message CM_MOUSEENTER;
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

{ TForm1 }

procedure Button1.CMMouseEnter(var Msg: TMessage);
begin
If (TObject(Msg.LParam) is TButton) Then
if TObject(Msg.LParam) = button1 then
ShowMessage (IntToStr(Button1.Handle) + " "+
IntToStr(Button1.Parent.Handle));
end;


end.

но мне кажется, что это нерациональное использование процессорного времени, а хотелось бы...


 
Мда..   (2003-03-02 20:11) [1]

Твой код работать не будет, и знаш почему?

> unit Unit1;
>
> procedure Button1.CMMouseEnter(var Msg: TMessage);


Что за фигня? Юнит надо называть Main. Это нерациональное использование твоего личного времени.

А вот этот код работать будет:

unit Main;

interface

uses
Windows, Messages, SysUtils, Forms, StdCtrls, Classes, Controls;

type
TMainForm = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
private
OldProc: TWndMethod;
procedure NewProc(var Msg: TMessage);
public
{ Public declarations }
end;

var
MainForm: TMainForm;

implementation

{$R *.dfm}

{ TMainForm }

procedure TMainForm.NewProc(var Msg: TMessage);
begin
case Msg.Msg of
CM_MOUSEENTER: Button1.Caption := "Enter";
CM_MOUSELEAVE: Button1.Caption := "Exit";
end;
OldProc(Msg);
end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
OldProc := Button1.WindowProc;
Button1.WindowProc := NewProc;
end;

утв.



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

Текущий архив: 2003.03.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
14-39479
Fishka
2003-02-27 11:30
2003.03.13
Регистрация и разрегистрация


14-39507
Mihey
2003-02-24 23:15
2003.03.13
Кто чем рисует?


4-39640
maxim2
2003-01-22 09:08
2003.03.13
Послать сообщение окну


14-39567
stone
2003-02-25 15:58
2003.03.13
Отношение простых американцев к войне в Ираке.


3-39227
devol
2003-02-05 16:08
2003.03.13
SQL Server