![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Смена цвета кнопки при наведении курсора...
VitV © (2006-02-27 14:13:00)Не подскажете как сменять рисунок кнопки(SpeedButton)при наведении на неё курсора.
VitV (2006-02-27 18:21:00) [1]Большое спасибо за помощь.
КаПиБаРа (2006-02-27 14:26:00) [2]http://www.yandex.ru/yandsearch?text=CM_MouseEnter&stype=www
Dmitrij_K (2006-02-27 14:24:00) [3]Вот компонент
OnMouseEnter - наведение курсора
OnMouseLeave - курсор ушел (пить пиво Ж))
unit ExtSpeedButton;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons;
type
TExtSpeedButton = class(TSpeedButton)
private
{ Private declarations }
FOnMouseLeave: TNotifyEvent;
FOnMouseEnter: TNotifyEvent;
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
protected
{ Protected declarations }
public
{ Public declarations }
published
{ Published declarations }
property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('ExtControl', [TExtSpeedButton]);
end;
{ TExtSpeedButton }
procedure TExtSpeedButton.CMMouseEnter(var Message: TMessage);
begin
if Assigned(FOnMouseEnter) then
FOnMouseEnter(Self);
end;
procedure TExtSpeedButton.CMMouseLeave(var Message: TMessage);
begin
if Assigned(FOnMouseLeave) then
FOnMouseLeave(Self);
end;
end.
Ega23 (2006-02-27 14:22:00) [4]Я бы в Application.OnIdle проверял позицию курсора, и если он над кнопкой, то ...