AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeigen
Thema durchsuchen
Ansicht
Themen-Optionen

Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeigen

Ein Thema von Christian18 · begonnen am 2. Feb 2006 · letzter Beitrag vom 2. Feb 2006
Antwort Antwort
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#1

Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeigen

  Alt 2. Feb 2006, 18:18
Hallo,

ich habe mal eine Frage, ich brauche bei einem Image ein Ereigniss. Dieses Ereigniss ist aber leider nicht da. Ich brauche das Ereigniss OnMouseLeave. Das gibt es auch bei Labels.

Also ich will folgendes machen vieleicht gibt es ja auch eine andere möglichkeit:

Ich habe eine Grafik die in einem Image angezeigt wird, wenn ich auf diese Grafik mit der Mouse fahre, dann soll ein anderes Bild angezeigt werden. Wenn ich mit der Mouse wie weg bin, dann soll das ausgangsbild wieder angezeigt werden. und wenn geklickt wird, dann soll wieder ein anderes Bild angezeigt werden.

Wie kann ich das mit den (Mouse --> runter vpm Image) machen.

Wenn ich mit der Mouse auf das Image gehe, das funktioniert schon und wenn ich klicke, dann kommt auch ein anderes bild, das funktioniert auch schon, aber wie kann ich es machen, das wenn ich mit der Mouse runterfahre, das dann ein neues Bild angezeigt wird.

Mit freundlichen Grüßen

Christian18
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeig

  Alt 2. Feb 2006, 18:30
In etwa so:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Image1: TImage; // Das Image was schon auf der Form liegt
    //...
  private
    { Private-Deklarationen }
    procedure CMMouseEnter(var Msg: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CMMouseEnter(var Msg: TMessage);
var
  aComponent: TComponent;
begin
  aComponent := TComponent(Msg.LParam);
  if (aComponent = Image1) then
  begin
    Image1.Picture.LoadFromFile('...');
  end;
end;

procedure TForm1.CMMouseLeave(var Msg: TMessage);
var
  aComponent: TComponent;
begin
  aComponent := TComponent(Msg.LParam);
  if (aComponent = Image1) then
  begin
    Image1.Picture.LoadFromFile('...');
  end;
end;

War das nicht schon mal irgend wo hier in der DP erleutert ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#3

Re: Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeig

  Alt 2. Feb 2006, 18:45
Hallo,

in welche Unit ist denn "CM_MOUSEENTER", denn da kommt ein Fehler.

[Fehler] UGM.pas(12): Undefinierter Bezeichner: 'CM_MOUSEENTER'
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#4

Re: Wenn Image kein Mouse Zeiger drauf hat anderes Bild zeig

  Alt 2. Feb 2006, 19:17
Hallo,

ich habs schon alleine gefunden!

für alle die es auch mal auspropieren wollen, es ist die unit:

Controls
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 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