Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi BitBtn Button effekt (https://www.delphipraxis.net/114346-bitbtn-button-effekt.html)

Delphiturbo 23. Mai 2008 18:33


BitBtn Button effekt
 
Hallo

ich möchte mein BitBtn ein Bild bei Mousemove zuweisen
d.h. wenn ich den Cursor auf das Button lege ohne zu klicken, soll das Button sein Bild (Icon) ändern

Das BitBtn Button hat in moment 4 Bilder
1 bei normal
2. wenn deaktiviert
3. wenn angeklickt
4. bei UP

wie kann ich das Bilder (Icon) von BitBtn ändern, wenn der Cursor drauf ?

Delphi-Quellcode:
procedure TForm1.BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin

end;

mkinzler 23. Mai 2008 18:37

Re: BitBtn Button effekt
 
MousEnter und MouseLeave wäre wohl geeigneter

himitsu 23. Mai 2008 18:37

Re: BitBtn Button effekt
 
am Einfachsten indem du dem Button ein anderes Bild/Bilderset zuweist.



aber die Erkennung ob die Maus wieder vom Button runter ist wird über BitBtn1MouseMove schwer zu erkennen sein.

[edit] war wohl wer schneller -.-''

Delphiturbo 23. Mai 2008 19:54

Re: BitBtn Button effekt
 
Zitat:

Zitat von mkinzler
MousEnter und MouseLeave wäre wohl geeigneter

es ist egal welche, Mouseenter oder wie ich wollte On mousemove, ..
Ich möchte wissen wie man ein Bild zuweißt
Ich habe so versucht

Delphi-Quellcode:
procedure TForm1.BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
BitBtn1.Glyph.Data:='...' // funktioniert leider nicht !

mkinzler 23. Mai 2008 19:58

Re: BitBtn Button effekt
 
In welcher Form leigen die Bilder vor?
Schau dir mal
BitBtn.Glyph.Assign();
an

Matze 23. Mai 2008 20:03

Re: BitBtn Button effekt
 
Oder nimm eine TImageList. Damit geht's auch einwandfrei:

Delphi-Quellcode:
procedure TForm1.BitBtn1MouseEnter(Sender: TObject);
begin
  BitBtn1.Glyph := nil;
  ImageList1.GetBitmap(0, BitBtn1.Glyph);
end;

procedure TForm1.BitBtn1MouseLeave(Sender: TObject);
begin
  BitBtn1.Glyph := nil;
  ImageList1.GetBitmap(1, BitBtn1.Glyph);
end;

Larsi 23. Mai 2008 20:22

Re: BitBtn Button effekt
 
Über Glyph sollte es eigentlich aber doch auch gehen?


Edit: Oh, da steht die Lösung ja :)

Delphiturbo 23. Mai 2008 23:23

Re: BitBtn Button effekt
 
Zitat:

Zitat von Larsi
Über Glyph sollte es eigentlich aber doch auch gehen?

Edit: Oh, da steht die Lösung ja :)

Aber nur in 4 Fällen
Up, Disabled,Clicked,Down mehr nicht. Wie Onmouseenter, Onmouseleave, ... nicht oder ?

Allerding
so habe ich verscuht ohne Erfolg :
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    ImageList1: TImageList;
  private
  procedure BitBtn1MouseEnter(Sender: TObject);
  procedure BitBtn1MouseLeave(Sender: TObject);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1MouseEnter(Sender: TObject);
begin
  BitBtn1.Glyph := nil;
  ImageList1.GetBitmap(0, BitBtn1.Glyph);
end;

procedure TForm1.BitBtn1MouseLeave(Sender: TObject);
begin
  BitBtn1.Glyph := nil;
  ImageList1.GetBitmap(1, BitBtn1.Glyph);
end;

end.
auch so nicht geklappt :
Delphi-Quellcode:
procedure TForm1.CMMouseEnter(var Message: TMessage);
var
  ptWork : TPoint;
begin
  GetCursorPos(ptWork);
  if WindowFromPoint(ptWork) = BitBtn1.Handle then
    BitBtn1.Glyph := nil;
    ImageList1.GetBitmap(2, BitBtn1.Glyph);

end;

Fussball-Robby 23. Mai 2008 23:25

Re: BitBtn Button effekt
 
Gibts nen Fehler, wird was falsches angezeigt oder passiert garnichts? Das man danach immer fragen muss :roll: Sind in der ImageList überhaupt Bilder drin?

Delphiturbo 23. Mai 2008 23:51

Re: BitBtn Button effekt
 
Es passiert nichts
kein Fehler
ListImage1 enthält natürlich Icons (mehrere)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:39 Uhr.
Seite 1 von 4  1 23     Letzte »    

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