Español
Foro

Mausposition außer halb des Profanprogramms herausfinden

 

ToM
hi!

Yo hätt veces otra vez ne frage ...

El Mausposition innerhalb des eigenen Ventana herausfinden es ligeramente, sólo como kann Yo
el hacer, si yo nichtmal una propio Ventana tener, dass Yo el aktuelle Mausposition
herausfinde ?!

hoffe me kannwer helfen

mfg ToM
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 



So?
KompilierenMarcaSeparación
DEF @GetCursorPos(1) !"USER32","GetCursorPos"
Def @ScreenToClient(2) !"USER32","ScreenToClient"
Windowstyle 31
Windowtitle "Globale Mauskoordinaten in Fensterposition umrechnen"
Window 50,75-600,350
Declare pos#

While 0=0

    Sleep 10
    DIM POS#,8
    GetCursorPos(pos#)
    Drawtext 0,0,"Global X="+@STR$(@Long(Pos#,0))+@Space$(100)
    Drawtext 0,20,"Global Y="+@STR$(@Long(Pos#,4))+@Space$(100)
    @ScreenToClient(%HWND,Pos#)
    Drawtext 0,40,"Lokal X="+@STR$(@Long(Pos#,0))+@Space$(100)
    Drawtext 0,60,"Lokal Y="+@STR$(@Long(Pos#,4))+@Space$(100)
    Dispose Pos#

Wend

 
21.09.2005  
 




ToM
danke

genau el meinte Yo
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 




ToM
hmm hätte todavía una problem

gibts lo una umgekehrte funktion de SetWindowPos

also dass Man el Position uno otro Fensters y el Größe uno otro Fensters
herausfindet hm ?!

mfg tom
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 



So?
KompilierenMarcaSeparación
Def @GetWindowRect(2) !"USER32", "GetWindowRect"
Def @ScreenToClient(2) !"USER32","ScreenToClient"
WindowTitle "Koordinaten"
Windowstyle 31+512
Window 0,0-640,440
Decimals 0
Declare b#,dlg&
LET dlg&=@Create("Window",%hwnd,"Testdialog",150,150,300,300)

Whilenot %MENUITEM=-2

    GetMessage
    Locate 1,1
    Dim b#,16
    @GetWindowRect(dlg&,b#)
    print "Eckpunkte von Testdialog bezogen auf Bildschirm:",Long(b#,0),Long(b#,4),Long(b#,8),Long(b#,12);"       "
    @ScreenToClient(%hwnd,b#)
    @ScreenToClient(%hwnd,b#+8)
    print "Eckpunkte von Testdialog bezogen auf %hwnd:",Long(b#,0),Long(b#,4),Long(b#,8),Long(b#,12);"       "
    @GetWindowRect(dlg&,b#)
    @ScreenToClient(dlg&,b#)
    @ScreenToClient(dlg&,b# + 8)
    Print ""
    PRINT "Breite des Rahmens von Testdialog: "+@STR$(@ABS(Long(b#,0))/2)+"            "
    PRINT "Höhe der Titelzeile von Testdialog ohne Rahmen: "+@STR$(@ABS(Long(b#,4))-@ABS(Long(b#,0)))+"            "
    PRINT "Breite des Clientbereiches von Testdialog: "+@STR$(Long(b#,8))+"            "
    PRINT "Höhe des Clientbereiches von Testdialog: "+@STR$(Long(b#,12))+"            "
    Dispose b#

Wend

 
21.09.2005  
 




ToM
hmmm meinte el así z.B.:

Ventana: Windows Media Player
Höhe 300 / Breite 400
PosX 200 / PosY 200

Also dass uno esta Sachen herausfindet.

mfg tom
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 



Das macht el og Code.
 
21.09.2005  
 




ToM
ok habn bissl falsche pensamiento, sorry

y thx fürn code y sorry dass Yo eurer forum así fülle *g*

mfg tom
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 



Macht nichts, es sí viel Platz hier .
 
21.09.2005  
 




ToM
hmmm en el oberen quellcode voluntad de y a 1000él Stellen hunugefügt, also en lugar de z.B. 512 .. 512000

wieso hm ?!

mfg tom
 
AMD Athlon 64 4500+ / 1500 MB Ram / Windows Server 2003 Enterprise / Profan 7.0
21.09.2005  
 



So auch todavía???
KompilierenMarcaSeparación
Def @GetWindowRect(2) !"USER32", "GetWindowRect"
Def @ScreenToClient(2) !"USER32","ScreenToClient"
WindowTitle "Koordinaten"
Windowstyle 31+512
Window 0,0-640,440
Decimals 0
Declare b#,dlg&
LET dlg&=@Create("Window",%hwnd,"Testdialog",150,150,300,300)

Whilenot %MENUITEM=-2

    GetMessage
    Locate 1,1
    Dim b#,16
    @GetWindowRect(dlg&,b#)
    print "Eckpunkte von Testdialog bezogen auf Bildschirm:"+@STR$(Long(b#,0))+" "+@Str$(Long(b#,4))+" "+@Str$(Long(b#,8))+" "+@str$(Long(b#,12))+"                  "
    @ScreenToClient(%hwnd,b#)
    @ScreenToClient(%hwnd,b#+8)
    print "Eckpunkte von Testdialog bezogen auf %hwnd:"+@str$(Long(b#,0))+" "+@Str$(Long(b#,4))+" "+@Str$(Long(b#,8))+" "+@Str$(Long(b#,12))+"              "
    @GetWindowRect(dlg&,b#)
    @ScreenToClient(dlg&,b#)
    @ScreenToClient(dlg&,b# + 8)
    Print ""
    PRINT "Breite des Rahmens von Testdialog: "+@STR$(@ABS(Long(b#,0))/2)+"            "
    PRINT "Höhe der Titelzeile von Testdialog ohne Rahmen: "+@STR$(@ABS(Long(b#,4))-@ABS(Long(b#,0)))+"            "
    PRINT "Breite des Clientbereiches von Testdialog: "+@STR$(Long(b#,8))+"            "
    PRINT "Höhe des Clientbereiches von Testdialog: "+@STR$(Long(b#,12))+"            "
    Dispose b#

Wend

 
21.09.2005  
 



So auch todavía? Welche Profanversion???
KompilierenMarcaSeparación
DEF @GetCursorPos(1) !"USER32","GetCursorPos"
Def @ScreenToClient(2) !"USER32","ScreenToClient"
Windowstyle 31
Windowtitle "Globale Mauskoordinaten in Fensterposition umrechnen"
Window 50,75-600,350
Declare pos#

While 0=0

    Sleep 10
    DIM POS#,8
    GetCursorPos(pos#)
    Drawtext 0,0,"Global X="+@STR$(@Long(Pos#,0))+"                    "
    Drawtext 0,20,"Global Y="+@STR$(@Long(Pos#,4))+"                    "
    @ScreenToClient(%HWND,Pos#)
    Drawtext 0,40,"Lokal X="+@STR$(@Long(Pos#,0))+"                      "
    Drawtext 0,60,"Lokal Y="+@STR$(@Long(Pos#,4))+"                       "
    Dispose Pos#

Wend

 
21.09.2005  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.352 Views

Untitledvor 0 min.
Sven Bader17.08.2021
Untitled11.05.2012
Julian Schmidt07.06.2011

Themeninformationen

Dieses Thema ha 3 subscriber:

ToM (10x)
unbekannt (7x)
iF (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie