2019/11/08(金) [n年前の日記]
#1 [pycairo] pycairoについてまだ勉強中
以下のサイトを写経しながら、pycairo を勉強中。
_PyCairo tutorial
最後のページの、ウインドウに対してアレコレするところでちょっとハマった。pycairo というより、PyGTK or PyGObject で何ができるか、という内容っぽいのだけど…。
_Working with the root window in PyCairo
背景が透明なウインドウを作れるらしいけど、Windows10 x64 1903 上ではそれらしくならなくて。
メッセージウインドウ表示のあたりも似たような感じで。MSYS2 + Python 3.8.0 + PyGObject でのみ試してみたけど、なんとも喩えようがない奇妙な表示になった。
画面全体をキャプチャするあたりは、MSYS2 + Python 3.8.0 + PyGObject 3.34.0-2 上でも動作した。Python 2.7.17 上では試してない。
おそらく、PyGTK or PyGObject の、このあたりの機能は、*NIX環境なら真っ当に動作するのだろう…。しかし、Windows上では、思った通りの結果にならないと思っておいたほうが良さそうだなと。
_PyCairo tutorial
最後のページの、ウインドウに対してアレコレするところでちょっとハマった。pycairo というより、PyGTK or PyGObject で何ができるか、という内容っぽいのだけど…。
_Working with the root window in PyCairo
背景が透明なウインドウを作れるらしいけど、Windows10 x64 1903 上ではそれらしくならなくて。
- Python 2.7.17 + PyGTK 2.24.0 では、真っ黒な背景がでてくるだけで、透明にはならない。
- MSYS2 + Python 3.8.0 + PyGObject では、ルートウインドウを透明に指定すると、ウインドウの枠より大きい領域で透明になるものの、ルートウインドウ内の各Widget は真っ黒な状態。ルートウインドウではなく、各Widget に対して透明になるように指定すれば、その場合はそれっぽく表示される。
メッセージウインドウ表示のあたりも似たような感じで。MSYS2 + Python 3.8.0 + PyGObject でのみ試してみたけど、なんとも喩えようがない奇妙な表示になった。
画面全体をキャプチャするあたりは、MSYS2 + Python 3.8.0 + PyGObject 3.34.0-2 上でも動作した。Python 2.7.17 上では試してない。
おそらく、PyGTK or PyGObject の、このあたりの機能は、*NIX環境なら真っ当に動作するのだろう…。しかし、Windows上では、思った通りの結果にならないと思っておいたほうが良さそうだなと。
[ ツッコむ ]
以上、1 日分です。