![]() |
die 0,0 koordinate in der PB verändert sich ständig
hi...
wir haben ein kleines problem mit unserer prozedur. unsere paintbox ist 300x300 gross. und in dieser sollen wir verschiedene geometrische figuren erstellen können. diese sollen nur dann dargestellt werden wenn diese auch ganz in die box passen. in der unten eingefügten prozedur kann man sehen wie wir die position in der paintbox berechnen. die x-position -242 und die y-position -153 ist die 0,0 koordinate in der paintbox. und genau da steckt das problem. die werte -242 und -153 passen machmal nicht mehr. man kann das programm einige male starten und immer stimmen die koordinaten. doch dann passiert es immer wieder das man die werte veränder muss damit die koordinaten stimmen.... dies passiert auch, wenn man am quellcode nichts weiter verändert hat. procedure THURecords.PaintBoxMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var a, b : integer; begin resetPaintBox; a := mouse.CursorPos.x-242; b := mouse.CursorPos.y-153; HURecords.lbXpos.Caption := IntToStr(a); HURecords.lbYpos.Caption := IntToStr(b); if RandChecked then Zeichnen; end; vielen dank schon mal... |
Re: die 0,0 koordinate in der PB verändert sich ständig
Zitat:
Zitat:
Warum benutzt du eigentlich nicht den X und Y Parameter, der bereits als Client-Koordinate vorliegt? |
Re: die 0,0 koordinate in der PB verändert sich ständig
mit resetPaintbox wird ans ich nicht viel gemacht:
Delphi-Quellcode:
habe mir eben mal die hilfe in delphi zu "ScreenToClient" angeschaut. aber irgendwie werde ich daraus nicht so wirklich schlau :oops:
procedure THURecords.ResetPaintBox;
begin Paintbox.canvas.brush.color := clWhite; PaintBox.Canvas.FillRect(Rect(0,0,Paintbox.Width,Paintbox.Height)); end; Zitat:
|
Re: die 0,0 koordinate in der PB verändert sich ständig
Zitat:
Delphi-Quellcode:
PaintBox.Canvas.FillRect(Paintbox.ClientRect);
Zitat:
Delphi-Quellcode:
var pt: TPoint;
begin Pt := PaintBox.ScreenToClient(Mouse.CursorPos); // mit Pt.X, Pt.Y arbeiten end; Zitat:
Damit meine ich Zitat:
|
Re: die 0,0 koordinate in der PB verändert sich ständig
Zitat:
Zitat:
weiss immernoch nicht so ganz wie ich das in mein programm einbauen soll. aber ich probiere da einfach nochmal bischen rum. muss bloss mit meinen variablen so weiterarbeiten (a,b) da ich die im rest des progs auch verwende und das nicht alles nochmal umschreiben möchte :roll: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz