Fenster koordinaten fremder Programme

Anfängerfragen zum Programmieren mit PureBasic.
TomTom
Beiträge: 130
Registriert: 18.10.2006 18:47

Fenster koordinaten fremder Programme

Beitrag von TomTom »

hi!

ich möchte ein programm schreiben, mit dem ich die Koordinaten des momentan aktiven Fenster herausfinde.

z.b.

man öffnet ein fenster(z.B. Arbeitsplatz) und verschiebt dies auf dem Desktop. mein programm soll diese verschiebung erkennen. also
das neue Fenster hat die Koordinaten 40 pixel nach rechts und 70 nach unten.

thx @ all
Pure Basic 4.0
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Fenster koordinaten fremder Programme

Beitrag von Kiffi »

TomTom hat geschrieben:ich möchte ein programm schreiben, mit dem ich die Koordinaten des momentan aktiven Fenster herausfinde.
aktives Fenster emitteln:

http://www.purebasic.fr/german/viewtopic.php?t=2665

Ausmaße eines Fensters ermitteln:

Code: Alles auswählen

GetWindowRect_()
http://www.purebasic.fr/german/viewtopic.php?t=13852

Grüße ... Kiffi
a²+b²=mc²
TomTom
Beiträge: 130
Registriert: 18.10.2006 18:47

Beitrag von TomTom »

Danke Kiffi!!! das hat mir sehr geholfen!
Pure Basic 4.0
TomTom
Beiträge: 130
Registriert: 18.10.2006 18:47

Beitrag von TomTom »

hi ich habe das programm jetzt (fast) fertig, mir ist aufgefallen, das immer streifen bleiben, die eigendlich wieder weggehen sollen...

wie kann ich den Desktop refreshen?
Pure Basic 4.0
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

TomTom hat geschrieben:hi ich habe das programm jetzt (fast) fertig, mir ist aufgefallen, das immer streifen bleiben, die eigendlich wieder weggehen sollen...
was, wie, wo? Streifen? Auf dem Monitor? Nimm dies hier.
TomTom hat geschrieben:wie kann ich den Desktop refreshen?
evtl. mit InvalidateRect_(). Aber ich würde vorher schauen, ob Du nicht u.U.
einen Fehler in Deinem Code hast.

Grüße ... Kiffi
a²+b²=mc²
TomTom
Beiträge: 130
Registriert: 18.10.2006 18:47

Beitrag von TomTom »

ne Kiffi fehler im code kann nicht (Programmiere ein Window Tool) hast du den Film Stirb Langsam 4.0 gesehen? Die Bösen Hacker (oder was das sind) hatten so striche am Windowrand (so:)
| |
-----+--------------+-------
| |
| Fenster |
| |
-----+--------------+------
| |

naja sieht so nicht so schön aus...


wenn ich das Fenster jetzt verschiebe dann bleiben die Ränder... die sollen aber weg!

:wink:


PS: Kann mir mal jemand den Link zu den API befehlen reinschreiben? THX!!
Pure Basic 4.0
TomTom
Beiträge: 130
Registriert: 18.10.2006 18:47

Beitrag von TomTom »

hi also mit dem Desktop refresh war es doch nicht so gut... alles ist dann nur am flackern...

kann man nur einen bestimmten teil des Desktops refreshen?

also das ich sage alles von pixel 20,40 bis 20,90 wird refreshed?

thx!
Pure Basic 4.0
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

TomTom hat geschrieben:kann man nur einen bestimmten teil des Desktops refreshen?
ich bin eigentlich noch immer der Meinung, dass die übrig bleibenden Ränder
nicht normal sind und sich das auch ohne Refresh erledigen lässt.

Kannst Du einen kleinen Code zusammenklöppeln, anhand dessen wir das
hier auch mal nachvollziehen können? Ich bin mir sicher, dass man das auch
anders in den Griff bekommen kann.

Grüße ... Küffi
a²+b²=mc²
Benutzeravatar
Ligatur
Beiträge: 196
Registriert: 09.07.2006 00:41

Beitrag von Ligatur »

TomTom hat geschrieben:hi also mit dem Desktop refresh war es doch nicht so gut... alles ist dann nur am flackern...

kann man nur einen bestimmten teil des Desktops refreshen?

also das ich sage alles von pixel 20,40 bis 20,90 wird refreshed?

thx!
Ja, mit InvalidateRect, das heißt nicht umsonst so.

InvalidateRect_(Hwnd, @Bereich.RECT, EraseFlag)

Bereich.RECT muß natürlich vorher initialisiert werden
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Kiffi hat geschrieben:was, wie, wo? Streifen? Auf dem Monitor? Nimm dies hier.
hähähä... das hab ich doch geahnt, was sich dort verbirgt, noch bevor ich es angeklickt hab. :allright:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten