Frage

X Windows verfügt über spezielle Prozesse, sogenannte Fenstermanager, die das Layout von Fenstern und Dekorationen wie Titelleiste, Steuerschaltflächen usw. verwalten.Solche Prozesse verwenden eine X-Windows-API, um Ereignisse im Zusammenhang mit Fenstergrößen und -positionen zu erkennen.

Gibt es einheitliche Möglichkeiten, solche Prozesse für Microsoft Windows oder Mac OS/X zu schreiben?

Ich weiß, dass diese Systeme im Allgemeinen weniger flexibel sind, aber ich suche nach etwas, das öffentliche APIs und keine undokumentierten Hacks verwendet.

War es hilfreich?

Lösung

Windows und Mac OS X verfügen über integrierte „Fenstermanager“, die nicht geändert werden können.Es gibt verschiedene Möglichkeiten, das Erscheinungsbild der Plattform anzupassen, aber Sie können die vorhandenen Fenstermanager nicht wirklich ersetzen.

Anwendungsprogramme verwenden APIs, um Ereignisse zu empfangen und mit dem Betriebssystem zu interagieren.Sie können eine Anwendung schreiben, die die Fenster anderer Anwendungen auf dem Bildschirm verschiebt, aber Sie können nicht das Maß an Kontrolle erhalten, das Sie von X erhalten.

Andere Tipps

Ich weiß nicht viel über OSX, aber es gibt mehrere Ersatz-Fenstermanager für MS Windows.Seit mindestens Windows Vista ist WM die Standardeinstellung Desktop-Fenstermanager (oder DWM).

Hier sind einige, die ich verwendet habe, als ich noch Windows verwenden musste:

  • LiteStep - Ich habe das schon benutzt, als ich 8 war (1998)
  • BB4win - Ich habe dies verwendet, als ich in der Multimedia-Schule war und gezwungen war, Windows zu verwenden (für Adobe Tools).
  • SharpE (Jetzt SharpEnviro) - Sieht gut aus, MicroSoft hätte dies in Vista als Standard verwenden sollen :)

Ich würde Ihnen empfehlen, diese Quellcodes zu lesen, wenn Sie Ihr eigenes MS WIN WM erstellen möchten.Ich weiß nicht, wie niedrig die Kontrolle sein kann, aber ein Austausch der Fensterdekoration scheint durchaus möglich, wenn Sie das möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top