Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Herausfinden über welcher grafik die mause ist. (https://www.delphipraxis.net/30483-herausfinden-ueber-welcher-grafik-die-mause-ist.html)

ferby 25. Sep 2004 13:49


Herausfinden über welcher grafik die mause ist.
 
Hallo,

ich habe ein menü mit 6 Timage, sie heißen m1, m2, m3 usw.
Ich möchte jetzt wenn mann mit der Maus über ein Bild drüber fährt das bei diesen Bild dann ein anderes Bild geladen wird, muss ich jetzt für jede grafik eine eigene procedure schreiben oder geht das anders leichter?


Danke für hilfe!

Meflin 25. Sep 2004 13:52

Re: Herausfinden über welcher grafik die mause ist.
 
gibt es da nicht eine eigenschaft hoverimages oder so :gruebel:
verwendest du ein normales TMainMenu?

ferby 25. Sep 2004 13:57

Re: Herausfinden über welcher grafik die mause ist.
 
Hallo,

eigentlich habe ich 6 Timages genommen, habe gar nicht geschaut ob es ein TMainMenu gibt.
schau mir es mal an.

Meflin 25. Sep 2004 13:58

Re: Herausfinden über welcher grafik die mause ist.
 
achso, ich habe mich geirrt, tmainmenu hat diese eigenschaft nicht. aber wenn du eine Ttoolbar nimmst, die hat eine namens hotimages, das könnte das sein was du willst!

ferby 25. Sep 2004 14:00

Re: Herausfinden über welcher grafik die mause ist.
 
Hallo,

ich glaube du verstehst mich falsch, ich habe nicht so ein menü wie windows (oben) sondern mitten im Programm sind 6 Bilder untereinander, so ähnlich wie bei computerspiele.

Meflin 25. Sep 2004 14:02

Re: Herausfinden über welcher grafik die mause ist.
 
achso :? na wenn du keine andere kompo dazu verwenden willst weis ich nix lecihteres als bei jedem image ins mousemove event das bild zu ändern und bei form mousemove wieder zurückzusetzen!

ferby 25. Sep 2004 14:03

Re: Herausfinden über welcher grafik die mause ist.
 
hi,

na wenn es da keine andere lösung gibt dann werde ich das wohl machen müssen.

Nightshade 25. Sep 2004 14:03

Re: Herausfinden über welcher grafik die mause ist.
 
Oder les mal das hier :

TImage Bild wechseln wenn mit Maus drueber

ferby 25. Sep 2004 14:23

Re: Herausfinden über welcher grafik die mause ist.
 
Hallo,


ich habe es jetzt so gelößt, hoffe das ist eine gutte lösung:

Delphi-Quellcode:
procedure tform1.menue;
var
BM:TBitmap;
i,x:integer;
begin

  x:=5;

  for i:=1 to 6 do
  begin
    TImage(FindComponent('m' + inttostr(i))).Visible:=true;
    bm := TBitmap.create;
    Imagelist1.getbitmap(x+i,Bm);
    TImage(FindComponent('m' + inttostr(i))).Picture.Bitmap := BM;
  end;

  if mbild<>0 then
  begin
    Imagelist1.getbitmap(mbild-1,Bm);
    TImage(FindComponent('m' + inttostr(mbild))).Picture.Bitmap := BM;
  end;

end;

procedure TForm1.m1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if mbild<>1 then begin mbild:=1; menue; end;
end;

procedure TForm1.m2MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mbild<>2 then begin mbild:=2; menue; end;
end;

procedure TForm1.m3MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mbild<>3 then begin mbild:=3; menue; end;
end;

procedure TForm1.m4MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mbild<>4 then begin mbild:=4; menue; end;
end;

procedure TForm1.m5MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mbild<>5 then begin mbild:=5; menue; end;
end;

procedure TForm1.m6MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
if mbild<>6 then begin mbild:=6; menue; end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:01 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