Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Maus Position in image1 (https://www.delphipraxis.net/132750-maus-position-image1.html)

net devil 18. Apr 2009 21:31


Maus Position in image1
 
Hallo liebe Delphianer,

bevor jemand kommt ich solle due SuFu benutzen, ich hab mich totgegoogelt.

Ich versuche die aktuellen Mauskoordinaten auszulesen. Das ist an sich auch kein Problem, jedoch werden sie mir immer auf den ganzen Bildschirm bezogen ausgegeben.
Jetzt möchte ich aber die Koordinaten nur auf das image1 beziehen und die Ausgabe in 2 Labels machen.

Ich habe einiges gefunden zu dem Thema, das hat jedoch nicht funktioniert (es liegt wahrscheinlich an mir).

Was mache ich falsch: Es wird einfach nichts angezeigt.
Bitte helft mir schnell :)

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  label1.caption:=inttostr(x);
  label2.caption:=inttostr(y);
end;

end.

DeddyH 18. Apr 2009 21:36

Re: Maus Position in image1
 
Eigentlich müsste das aber so stimmen. Wenn Du das bei einem Image abfragen willst, musst Du dann natürlich das MouseMove-Ereignis des Images nehmen.

MikeS 18. Apr 2009 21:36

Re: Maus Position in image1
 
Hi net devil,
dein Code funktioniert doch super.
Wenn du allerdings nur die Koordinaten über dem Bild haben möchtest, dann ändere die MouseMove Funktion von "from" zu "image".

Mike

net devil 18. Apr 2009 21:44

Re: Maus Position in image1
 
:gruebel: Wie muss ich denn die Bildkomponente einfügen? Im Code oder als Objekt. Wenn ich es als Objekt einfüge erscheint nämlich erst was wenn ich darauf zeichne...
Bei mir bleibt da "label1" und "label2" stehen wenn ich mit der Maus über das Bild fahre.

Das mit dem Form statt image habe ich nur zum ausprobieren gemacht, und selbst da hat es nicht funktioniert. -.-

Es ist wahrscheinlich ganz trivial, nur ich komm nicht dahinter. :wiejetzt:
Funktioniert es denn bei euch? Oder seht ihr nur keinen Fehler im Code?


Vielen Dank für eure schnellen Antworten!!

DeddyH 18. Apr 2009 21:47

Re: Maus Position in image1
 
Schau doch mal im Objektinspektor nach, ob das Ereignis auch zugewiesen ist.

net devil 18. Apr 2009 21:50

Re: Maus Position in image1
 
:wall: :wall: :wall:

DeddyH ich danke dir!!! :love: - Natürlich auch dir MikeS!
Es funktioniert einwandfrei, jedoch weiß ich immer noch nicht, warum das ereignis nicht zugeweisen war...

DeddyH 18. Apr 2009 21:58

Re: Maus Position in image1
 
Du darfst das nicht einfach so in den Quellcode schreiben, sondern musst schön einen Doppelklick im OI machen, sonst wird das nix ;)


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