Seite 1 von 1

Screen nachschauen

Verfasst: 06.12.2005 16:01
von Konne
Hallo ich hab mal wieder ne Frage (eigendlich sind es 2) auf die ich einfach keine Antwort finden kann:
1) Wie kann man herausfinden ob gerade ein Vollbild geöffnet ist.
2) Wie kann man die Id des Vollbildes herausfinden also darauf malen. So wie zB bei einem Framemessprogramm, welches dir Framezahl direkt auf den Screen schreibt.

Verfasst: 08.12.2005 19:46
von Konne
Ist das so schwer, dass das hier keiner weiß?
Das sollte doch net so schwer sein oder?
Sogar der Treiber meiner Tastatur kann einfach so auf den Screen malen.
:(

Verfasst: 08.12.2005 20:27
von Laurin
Ein Vollbild ist auch nur ein Fenster, auch wenn es die Abmessung des Desktops hat.
Du müsstest also alle geöffneten Fenster auf ihre Größe untersuchen. Und selbst dann kann man sich nicht sicher sein, ob dieses Fenster ein Vollbildschirm ist. (Es könnte ja auch einfach nur ein maximiertes Explorerfenster sein).

Die Framemessprogramme klinken sich AFAIK in DirectX oder OpenGl ein. Nur dadurch kommen die an die Framezahlen.

Verfasst: 08.12.2005 20:56
von Konne
THX.
Mal von den Framezahlen abgesehen, wie kann ich denn herausfinden welche ID der aktiuelle Screen (bzw Fenster so wie du das erklärt hast) hat?

Verfasst: 08.12.2005 21:13
von AndyX
IsScreenActive()

und

ScreenOutput()

Verfasst: 08.12.2005 21:43
von Nik
Er meint den Screen eines anderen Programms!

Verfasst: 08.12.2005 22:46
von Laurin
Konne hat geschrieben:THX.
Mal von den Framezahlen abgesehen, wie kann ich denn herausfinden welche ID der aktiuelle Screen (bzw Fenster so wie du das erklärt hast) hat?
Boardsuche hilft ;)

http://forums.purebasic.com/german/view ... nd+fenster
(2. Frage)

Verfasst: 09.12.2005 15:49
von Konne
Lieg ich mit

Code: Alles auswählen

hwnd=GetForegroundWindow_()
richtig ?
Wenn ja wie kann ich dann darauf rummalen?

Start Drawing braucht ja das akteuell Fenster:
OutputID = WindowOutput()
Beschreibung

Gibt die 'OutputID' des aktuell benutzten Fensters zurück, um darauf 2D-Zeichenoperationen auszuführen. Hierfür wird die PureBasic 2DDrawing Library (siehe StartDrawing()) benutzt.
und Usewindow braucht die Konstanto:
>>UseWindow(#Window)

Wie macht man des also ???

Verfasst: 09.12.2005 15:58
von Kaeru Gaman
du willst auf irgendeinem fremden fenster rummalen?

ich hoffe nicht, dass ein fremder prozess dort zugriff hat...

Verfasst: 09.12.2005 16:54
von Konne
Nja eigendlich will ich auf einem Screen rummalen, allerdings meinte irgendwer hier ja des wäre auch nur ein Fesnter. D.h. man sollte da ja dann auch mit WindowOutput() rummalen können. Wenn es mit Screenoutput() auch geht so WÄRE DASS NATÜRLICH SUPER.

Zum Thema "Es wäre doof wenn jemand anderes in meinen Fenster rummalen kann".
Also wie man die Gadgettexte eines anderen Prozesses ändert, dass weiß ich^^.