hallo leute,
wie kann man feststellen, auf welchem fenster das eigene programm derzeit läuft?
müsste unter win, lin und mac eine lösung finden...
mfg
kurt
aktuelles desktop?
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: aktuelles desktop?
Siehe Desktop Lib in der Hilfe. Anhand der Fensterposition sollte sich der verwendete Desktop ermitteln lassen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

-
- Beiträge: 173
- Registriert: 30.11.2010 02:34
Re: aktuelles desktop?
habe ich,
aber man muss die nummer des desktops selbst angeben, um dessen width, height, depth usw zu erhalten.
ich will die nummer des desktops rausbekommen, auf dem sich das programmfenster aktuell befindet.
mir ist nicht klar, wie ich das machen soll.
mfg
kurt
aber man muss die nummer des desktops selbst angeben, um dessen width, height, depth usw zu erhalten.
ich will die nummer des desktops rausbekommen, auf dem sich das programmfenster aktuell befindet.
mir ist nicht klar, wie ich das machen soll.
mfg
kurt
Re: aktuelles desktop?
Steht doch eigentlich alles in der Hilfe...
Folgender Code gibt die Nummer des Desktop aus, auf dem sich die linke obere Ecke eines Fenster befindet.Ein Fenster kann sich aber theoretisch auf allen Desktops befinden.
Aber das kriegst du bestimmt selber hin.
Folgender Code gibt die Nummer des Desktop aus, auf dem sich die linke obere Ecke eines Fenster befindet.
Code: Alles auswählen
Define k.i
Define n.i = ExamineDesktops() - 1
If IsWindow(hWnd)
For k = 0 To n
If WindowX(hWnd) >= DesktopX(k) And WindowX(hwnd) <= DesktopX(k)+DesktopWidth(k) And WindowY(hWnd) >= DesktopY(k) And WindowY(hwnd) <= DesktopY(k)+DesktopHeight(k)
Debug "Das Fenster befindet sich auf Desktop "+Str(k)
EndIf
Next
EndIf
Aber das kriegst du bestimmt selber hin.
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: aktuelles desktop?
Du enumerierst durch alle Desktops und vergleichst Deine Fensterkoordinaten mit denen des Desktops, also obdelikanli_19_82 hat geschrieben:ich will die nummer des desktops rausbekommen, auf dem sich das programmfenster aktuell befindet.
mir ist nicht klar, wie ich das machen soll.
sich Deines innerhalb dieser Koordinaten befindet. Von den verschiedenen Desktops fängt nur einer mit 0, 0 in der
oberen linken Ecke an

PS: Es können auch negative Werte auftauchen, je nach Desktop-Konfiguration.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

-
- Beiträge: 173
- Registriert: 30.11.2010 02:34
Re: aktuelles desktop?
ich habe aus irgendeinem grund die prozeduren desktopx und desktopy nicht wahrgenommen und bin bei desktopmousex und desktopmousey hengengeblieben, was zu folge hatte, das mir nicht klar war, wie ich die desktops ermitteln soll.
darüber hinaus dachte ich, das es eine api-call geben müsste, das mir mitteilt, auf welchem desktop ich mich gerade befinde.
die vorgestellte methode ist peinlich simpel. danke euch beiden
mfg
kurt
darüber hinaus dachte ich, das es eine api-call geben müsste, das mir mitteilt, auf welchem desktop ich mich gerade befinde.
die vorgestellte methode ist peinlich simpel. danke euch beiden

mfg
kurt