Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi SetCursorPos relativ (https://www.delphipraxis.net/115184-setcursorpos-relativ.html)

Delphiturbo 7. Jun 2008 11:28


SetCursorPos relativ
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo

gibt eine keine gute und kürzter Weg um den Cursor auf das Objekt in der Mitte zu positionieren?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
SetCursorPos(left + Panel1.Left +Button1.left+Button1.Width div 2,Top + 30 {Titelleiste Höhe :( } +Panel1.Top + Button1.top + Button1.Height div 2);
end;

1234588 7. Jun 2008 11:43

Re: SetCursorPos relativ
 
ist das nicht kurz genug?

//edit
wo soll der cursor denn hin?

Delphiturbo 7. Jun 2008 11:50

Re: SetCursorPos relativ
 
Zitat:

Zitat von 1234588
ist das nicht kurz genug?

//edit
wo soll der cursor denn hin?

auf sich selbe natürlich

DeddyH 7. Jun 2008 11:51

Re: SetCursorPos relativ
 
Es gibt da in der VCL so niedliche Funktionen wie ScreenToClient() bzw. ClientToScreen().

Die Muhkuh 7. Jun 2008 11:52

Re: SetCursorPos relativ
 
Du könntest eine Funktion schreiben, die durch alle Parents iteriert und die Left-Angaben dazu zählt.

Oder das von Detlef :stupid:

1234588 7. Jun 2008 11:52

Re: SetCursorPos relativ
 
Zitat:

Zitat von Delphiturbo
Zitat:

Zitat von 1234588
ist das nicht kurz genug?

//edit
wo soll der cursor denn hin?

auf sich selbe natürlich

der cursor soll auf sich selbst?

Die Muhkuh 7. Jun 2008 11:53

Re: SetCursorPos relativ
 
Auf die Komponente, imho. :gruebel:

DeddyH 7. Jun 2008 11:55

Re: SetCursorPos relativ
 
Wäre doch auch mal eine schön sinnfreie Variante.
Delphi-Quellcode:
SetCursorPos(Mouse.CursorPos.X, Mouse.CursorPos.Y);
:stupid:

Die Muhkuh 7. Jun 2008 11:58

Re: SetCursorPos relativ
 
Doll, Detlef :mrgreen:

oki 7. Jun 2008 12:02

Re: SetCursorPos relativ
 
Ich würd noch ein Sleep einbauen damit es nicht so schnell geht. Sonst sieht man ja gar nichts.

Gruß oki

DeddyH 7. Jun 2008 12:03

Re: SetCursorPos relativ
 
Sry, vergessen :stupid:

rotfc 7. Jun 2008 12:04

Re: SetCursorPos relativ
 
Leider sollte ich nicht schreiben, was ich denke :thumb:

Die Muhkuh 7. Jun 2008 12:04

Re: SetCursorPos relativ
 
Wer weiß, was er vor hat, vielleicht braucht er ja kein Sleep.

Wenn Du Dich allerdings auf Detlefs Code beziehst :arrow: :lol:

oki 7. Jun 2008 12:07

Re: SetCursorPos relativ
 
Red nicht, ein sleep ist immer gut. Kommt halt auf die Länge an. :mrgreen:

Wenns doch zu schnell wird würd ich mit ClienttoScreen auf die Mitte des Controls arbeiten.

Gruß

[edit] Sorry fürs Edit, aber der Smiley musste einfach mit rein! [/edit]
[edit2] Mann, heut ist nicht mein Tag, schon das zweite mal editiert. Natürlich meinte ich Detlefs Code, woanders macht es doch gar keinen Sinn. Geh in Dich!!! [/edit2]

Der.Kaktus 7. Jun 2008 12:09

Re: SetCursorPos relativ
 
Zitat:

Zitat von DeddyH
Wäre doch auch mal eine schön sinnfreie Variante.
Delphi-Quellcode:
SetCursorPos(Mouse.CursorPos.X, Mouse.CursorPos.Y);
:stupid:

Du solltest wenigstens noch ne Mitteilung einbauen
Delphi-Quellcode:
 Showmessage('Cursor erfolgreich positioniert');
:-D



Entschuldigung, aber du bist nicht autorisiert dieses Attachment anzugucken oder herunterzuladen....immer ich, hab ich ein pech *gg*

Die Muhkuh 7. Jun 2008 12:09

Re: SetCursorPos relativ
 
Zitat:

Zitat von oki
Red nicht, ein sleep ist immer gut. Kommt halt auf die Länge an.

Ein Sleep ist dann gut, wenn es nötig ist, aber da wir nicht wissen, was er vor hat, kannst Du auch nicht pauschal sagen, dass es "immer" gut ist.

Deswegen wäre es interessant zu wissen, was DT vor hat, vielleicht lässt sich das auch anders lösen...

[edit] Kaki :thumb: :lol: [/edit]

[edit2] Vergiss meine Worte oben, oki, hatte den Smilie noch nicht gesehen ;-) [/edit]

oki 7. Jun 2008 12:14

Re: SetCursorPos relativ
 
Sorry Die Muhkuh, bin heue einfach zu lahm. Musste meinen Post auch glatt noch zwei mal editieren. Wie peinlich :oops:

Die Muhkuh 7. Jun 2008 12:17

Re: SetCursorPos relativ
 
Zitat:

Zitat von oki
Sorry Die Muhkuh, bin heue einfach zu lahm. Musste meinen Post auch glatt noch zwei mal editieren. Wie peinlich :oops:

Macht nichts. Heute ist Wochenende, da muss das Gehirn nicht mit voller Leistung arbeiten :zwinker:

Blackheart 7. Jun 2008 13:22

Re: SetCursorPos relativ
 
Wie es aussieht scheint ihr alle darauf verpicht zu sein Beiträge zu sammeln den geholfen hatt hier wohl kein Beitrag. (Ich hab jetzt auch einen mehr) :wink:

oki 7. Jun 2008 14:17

Re: SetCursorPos relativ
 
Zitat:

Zitat von Blackheart
Wie es aussieht scheint ihr alle darauf verpicht zu sein Beiträge zu sammeln den geholfen hatt hier wohl kein Beitrag. (Ich hab jetzt auch einen mehr) :wink:

Es ist zwar schwer zu helfen wenn jemand die Hinweise in seinen Threads nicht liest, aber deine Aussge ist so nicht richtig.

Zitat:

Zitat von oki
Wenns doch zu schnell wird würd ich mit ClienttoScreen auf die Mitte des Controls arbeiten.

Es kann ja sein, dass ich die Frage nicht richtig verstanden hab, aber andere haben diesen Aspekt auch zur Sprache gebracht. Imho ist der Weg über ClienttoScreen ein sehr eleganter Weg über Controlkoordinaten die Maus an die richtige Position zu bewegen.

Das wir uns etwas die Zeit tot schlagen während DelphiTurbo vergeblich auf fertigen Code zum kopieren wartet sei uns verziehen.

Wenn du natürlich unter Hilfe auch nur copy&paste verstehst, dann geb ich dir Recht. Hilfe NULL !!!(Ups, das war jetzt C; liebe Kinder, nicht in Delphi nachmachen).

Also, F1 drücken, lesen, und wenn dann etwas unklar ist helfe ich gerne weiter.

Bis die Tage,

Gruß oki

DeddyH 7. Jun 2008 14:22

Re: SetCursorPos relativ
 
Fertigen Code hab ich ja geliefert, aber kopieren sollte man den nicht :lol:

oki 7. Jun 2008 14:23

Re: SetCursorPos relativ
 
Verräter!!!!!

DeddyH 7. Jun 2008 14:27

Re: SetCursorPos relativ
 
:wiejetzt: :gruebel:

Der.Kaktus 7. Jun 2008 14:30

Re: SetCursorPos relativ
 
Zitat:

Zitat von oki
Verräter!!!!!

Du hast den Smiley vergessen ;-) :mrgreen:

Sharky 7. Jun 2008 14:33

Re: SetCursorPos relativ
 
L e u t e
e s
r e i c h t

:warn:


Wenn das so weitergeht mit euch und eurem absolut unnötigen Offtopic dann sucht euch eine andere Spielwiese.

Auch wenn Delphiturbo sicher nicht der einfachste User ist und seine Beiträge sehr zu wünschen übriglassen ist dies kein Freibrief jeden Thread von ihm durch euer Gebrabbel kaputt zu machen :!:

Der.Kaktus 7. Jun 2008 14:55

Re: SetCursorPos relativ
 
Zitat:

Zitat von Sharky
L e u t e
e s
r e i c h t

:warn:


Wenn das so weitergeht mit euch und eurem absolut unnötigen Offtopic dann sucht euch eine andere Spielwiese.

Auch wenn Delphiturbo sicher nicht der einfachste User ist und seine Beiträge sehr zu wünschen übriglassen ist dies kein Freibrief jeden Thread von ihm durch euer Gebrabbel kaputt zu machen :!:

Iss OK..wir waren bissl OT.. aberrrrrrrrrrr.. wir helfen alle gern..auch wenn gewisse User die einfachsten Sachen nicht verstehen..Wenn jemand es 100fach nicht versteht(verstehn will)..mußt Du nicht gleich "bei ein paar Spaessken"..zu haerteren Worten greifen. Vielleicht entsteht dadurch auch eine sogenannte Mißstimmung..*meine Meinung*..Ein bissl Spass hat noch keinem geschadet und solange er nich "beleidigend" ist, reicht sicher auch eine Mitteilung(Light).


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