Seite 1 von 1
Fenster Position auf dem Desktop.
Verfasst: 11.12.2004 03:23
von Andreas21
Hei
ich suche eine API möglichkeit die Fenster position auf dem Desktop heraus zu finden. Ich habe natürlich das Handel des Fensters.
Also die X,Y Position. Aber nicht die vom Fenster Ramen sondern vom Fenster.
Kann mir da einer einen Tip geben? Bitte.
Verfasst: 11.12.2004 12:52
von nco2k
Verfasst: 11.12.2004 17:48
von Andreas21
Jo sowas habe ich gemeint. Damit müste ich doch die X und Y punke bekommen können vom Fenster ohne Ramen.
Code: Alles auswählen
IncludeFile "ClientSize.pbi"
Procedure Position(handel)
x = WindowClientX(handel)
y = WindowClientY(handel)
Debug Str(x) + "x" + Str(y)
EndProcedure
Position(FindWindow_(0,"Fenster Name"))
Danke für den Code
Naja es geht fast. Ich kann die Grösse des Ramens berechnen damit. Also wenn ich WindowX() und WindowY() rausneme. Jetzt fehlt nur noch die möglichkeit die Position auf den Desktop heraus zu finden.
Verfasst: 17.12.2004 04:09
von Andreas21
Hat wiklich keiner eine Idee
Die grösse des Fensterramen wuse ich ja schon wie ich den berchnen kann. Hatte mal ein Tool geschrieben wo ich das brauchte. Aber die Position des Fenster brauchte ich da nicht.
Es muss doch eine möglichkeit geben die Position zu ermiteln.
Ich rede von Fremd Fenstern. Also keine von PB erzeugten.
Verfasst: 12.01.2005 10:56
von real
Versuch's mal mit GetWindowRect_(handel,rect)
rect ist eine Struktur, die aus den vier Longs left, top, right & bottom zusammengesetzt ist und auch unter PB schon definiert ist (RECT).
Ich hab's mal in Code gebastelt:
Code: Alles auswählen
Procedure Position(handel)
DefType.RECT WindowPos
GetWindowRect_(handel,WindowPos)
Debug Str(WindowPos\left) + "x" + Str(WindowPos\top)
EndProcedure
handel=OpenWindow(100, 100, 200, 195, 260, #PB_Window_SystemMenu, "PureBasic Window")
Position(handel)
Verfasst: 12.01.2005 23:45
von Andreas21
Hei,
Ok ich werde das Testen. Danke.
Ist das auch kompatiebel zu Win9X oder nur XP.
Ich hate da mal nämlich ne Api funktion wo da probleme gab und ich glaube das war soga die. Ich weiss es aber nicht mehr genau, ist schon ne weile her.
Verfasst: 13.01.2005 11:59
von real
GetWindowRect gibt's schon seit Christi Geburt

Sollte theoretisch schon bei Windows 3.11 funktionieren.