Mausposition abfragen...

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
mini990
1000 working lines a day
1000 working lines a day
Beiträge: 592
Registriert: Sa, 28. Jan 2006 9:44
Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
Danksagung erhalten: 1 Mal

Mausposition abfragen...

Beitrag von mini990 »

Hallo,
liegt es am Sonntag oder an der Situation?
Bin heute etwas blind.
Folgende Gegebenheiten:
XBPDialog() mit 3x XbpStatic(), in denen jeweils ein Bild angezeigt wird,
Mit einem Doppelklick auf ein Bild möchte ich eine Aktion auslösen.
Nun mein Problem.....
Wenn ich die Mausposition direkt nach einem Doppelklick abfrage bekomme ich die Position in dem entsprechenden XbpStatic()
Nur woher weiß ich dann, welches Static gemeint ist?
Wenn die Mausposition mit apos() abfrage bekomme ich die Mausposition abhängig von der Bildschirmauflösung zurück,
nicht die des Dialogs.

Hoffe, ich habe mich halbwegs verständlich ausgedrückt....
Wie kann ich das Problem lösen?

Gruß Stefan
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Mausposition abfragen...

Beitrag von AUGE_OHR »

hi

"wie" fragst du die Maus-Position ab ?

XbpStatic hat XbpWindow als SUPER Class und erbt

Code: Alles auswählen

:lbDown := {| aPos, uNIL, self | ... }
ich würde also bei jedem XbpStatic den o:LbDown Slot mit einem Codeblock bestücken.
gruss by OHR
Jimmy
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9357
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: Mausposition abfragen...

Beitrag von Tom »

Was Jimmy zu sagen versucht: Jedes XbPart hat einen Slot "LbClick" oder "LbDblClick" (und einige weitere). Die kannst Du direkt belegen.

Code: Alles auswählen

oXbp:=XbpStatic():New()
...
oXbp:LbClick := {||MsgBox('Linksmaustastenklick in mich!')}
Der Codeblock bekommt auch noch das Objekt als (dritten) Parameter, Du kannst damit also gleich hantieren:

Code: Alles auswählen

oXbp:LbClick := {|a,b,o|o:SetCaption('Ich wurde geklickt!')}
Herzlich,
Tom
Benutzeravatar
mini990
1000 working lines a day
1000 working lines a day
Beiträge: 592
Registriert: Sa, 28. Jan 2006 9:44
Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
Danksagung erhalten: 1 Mal

Re: Mausposition abfragen...

Beitrag von mini990 »

Hey super, danke!
Funktioniert wie gewollt.
Es gibt Tage, da hat man kein Brett, sondern einen ganzen Baumstamm vorm Kopf!

Schönen Abend noch...

Gruß Stefan
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9357
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: Mausposition abfragen...

Beitrag von Tom »

:D
Herzlich,
Tom
Antworten