AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Frage zu getcursorpos
Thema durchsuchen
Ansicht
Themen-Optionen

Frage zu getcursorpos

Ein Thema von Obi-1-ip · begonnen am 10. Dez 2003 · letzter Beitrag vom 9. Jan 2004
Antwort Antwort
Obi-1-ip

Registriert seit: 10. Dez 2003
2 Beiträge
 
#1

Frage zu getcursorpos

  Alt 10. Dez 2003, 16:28
Jo hi ich wollte mal fragen was ich genau machen will wenn ich eine canvas habe auf der ich bei click ein rechteck zeichnen will!!!(das ganze ist für die schule )
danke für eure hilfe
  Mit Zitat antworten Zitat
Maximus

Registriert seit: 26. Okt 2003
169 Beiträge
 
#2

Re: Frage zu getcursorpos

  Alt 10. Dez 2003, 16:48
Also mit getcursorpos kenn ich mich nicht dabei, aber du könntest es ja mit der OnMouseDown MEthode lösen? (die gibt mit X und Y die Position des Mauszeigers an!)

Edit: Siehe unten ein Beispiel
  Mit Zitat antworten Zitat
Lefko

Registriert seit: 31. Jul 2003
359 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Frage zu getcursorpos

  Alt 10. Dez 2003, 16:48
Zitat von Obi-1-ip:
...was ich genau machen will wenn ich eine canvas habe auf der ich bei click ein rechteck zeichnen will!!!
Ich glaube, du willst eine canvas haben auf der du bei click ein rechteck zeichen willst!

Ne, Scherz beiseite...
Du willst ein Rechteck zeichnen, wenn du auf das Image klickst? Wie groß soll das Rechteck sein? Willst du das mit der Maus ziehen oder einfach nur hinzeichnen?

einfach zum zeichnen wäre sowas:

Delphi-Quellcode:
procedure TFormX.FormMouseDown(Sender: TObject; Button: TMouseButton;
                               Shift: TShiftState; X, Y: Integer);
begin
with ImageX.canvas do
  begin
   pen.color := clblack;
   brush.color := white;
   rectangle(x , y , x + 30 , y + 50);
  end;
end;
Ansonsten schau dir (wie dein titel) GetCursorPos(Point) mal an, damit kannst du ein Rechteck ziehen...


MfG Lefko.
Johannes
-=[Nennst du meinen Namen, bin ich schon nicht mehr da]=-
  Mit Zitat antworten Zitat
Obi-1-ip

Registriert seit: 10. Dez 2003
2 Beiträge
 
#4

Re: Frage zu getcursorpos

  Alt 13. Dez 2003, 11:04
hmmm ziehen wäre geil ^^

wenn dus weist sag wenn nich nich schlimm ^^
  Mit Zitat antworten Zitat
Benutzerbild von F.W.
F.W.

Registriert seit: 28. Jul 2003
Ort: Zittau
636 Beiträge
 
#5

Re: Frage zu getcursorpos

  Alt 9. Jan 2004, 18:45
Ich habe gelernt, wenn man was beim geklickt halten zeichnen will (erstmal nur Oixel für Pixel), dann nimm die MouseMove Methode: if ssLeft in Shift then Image1.Canvas.Pixels[X, Y] := clblue; Damit kannst du schonmal so zeichnen, jetzt müsste man noch eine Lösung für das Zeichnen eines Rechtecks finden...

Versuch's mal damit:
Hat zwar jetzt nicht's mit dem eben genannten ssLeft und shift zu tun, aber ist vielleicht für dich ganz hilfreich(für später mal?)
Delphi-Quellcode:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 StartX := X;
 StartY := Y;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 Image1.Canvas.Rectangle(StartX, StartY, X, Y);
end;
Du musst als VarParameter der Form StartX, StartY als Integer deklarieren. Das Prinzip ist leicht, wenn die Maus gedrückt wird, werden StartX bzw -Y mit den X und Y Werten dieses Clicks belegt, und wird die Maus wieder losgelassen , wird ein Rechteck von StartX, bzw. -Y zum aktuellen X und Y gezeichnet.
Nachteil: Du siehst nicht den Rahmen, während du ziehst.
  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 20:48 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