Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-WIE? (https://www.delphipraxis.net/23452-mouse-over-effekt-fuer-tbitbtn-bitmap-button-erstellen-wie.html)

linacaro 3. Jun 2004 13:30


Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-WIE?
 
Hallo zusammen! :wall:
Ich würde meinem Bitmap Button in Delphi 7 gern einen Mouseovereffekt zuweisen (z.B. soll sich das Bild des Mauszeigern ändern). Leider bietet mir Delphi für den Button keinen vorgefertigten Mouseover an. Muss ich mir selber einen schreiben? Wie geht denn das? Wäre echt SUPER :lol:
wenn mir da jemand weiterhelfen könnte!

Grüßli

Caro

Meflin 3. Jun 2004 13:31

Re: Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-
 
upps...
:oops: das hilft dir auch nicht weiter...

linacaro 3. Jun 2004 13:34

Re: Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-
 
ja, schon, aber die reagiert auf jegliche Mausbewegung, auch außerhalb des buttons - zumindest bei mir

Meflin 3. Jun 2004 13:34

Re: Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-
 
siehe post oben ^ ;-)

Gandalfus 3. Jun 2004 14:00

Re: Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-
 
Delphi-Quellcode:
TCustomButton = class(TButton)
privat
  Procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
  Procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
end;

Procedure TCustomButton .CMMouseEnter(var Message: TMessage);
begin
 
end;

Procedure TCustomButton .CMMouseLeave(var Message: TMessage);
begin
 
end;

linacaro 3. Jun 2004 14:17

Re: Mouse-Over-Effekt für TBitBtn (Bitmap Button) erstellen-
 
delphi meckert (der compiler) dann immer rum, er würde TBtmBtn nicht kennen :-(

ich habe aus einem anderen forum sowas ähnliches für eine scrollbox gefunden und hab einfach oben bei class anstann TScrollBox TBtmBtn reingeschrieben... aber der compiler meckert - warum nur? :?:

************************************************** ***
unit Unit2;

interface

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

type
TScrollBoxEx = class (TBitBtn)
private
{ Private declarations }
FOnMouseLeave: TNotifyEvent;
FOnMouseEnter: TNotifyEvent;
procedure CMMouseEnter(var msg: TMessage);
message CM_MOUSEENTER;
procedure CMMouseLeave(var msg: TMessage);
message CM_MOUSELEAVE;
protected
{ Protected declarations }
procedure DoMouseEnter; dynamic;
procedure DoMouseLeave; dynamic;
public
{ Public declarations }
published
{ Published declarations }
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('Additional', [TScrollBoxEx]);
end;

{ TScrollBoxEx }

procedure TScrollBoxEx.CMMouseEnter(var msg: TMessage);
begin
DoMouseEnter;
end;

procedure TScrollBoxEx.CMMouseLeave(var msg: TMessage);
begin
DoMouseLeave;
end;

procedure TScrollBoxEx.DoMouseEnter;
begin
if Assigned(FOnMouseEnter) then
FOnMouseEnter(Self);
end;

procedure TScrollBoxEx.DoMouseLeave;
begin
if Assigned(FOnMouseLeave) then
FOnMouseLeave(Self);
end;

end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz