2020/03/05(木) [n年前の日記]
#1 [python] メインPCにインストールしてあるPythonを64bit版にした
今まで、メインPCには Python 32bit版をインストールしていたけれど、PySide2 とやらが 64bit版しか対応してないという話を見かけたので、この際64bit版にしてしまおうかと。てなわけで、Python 3.7.6 64bit版をインストールして、Python 3.7.6 32bit版はアンインストール。
pip でインストールしていたモジュールもごっそり再インストール。
pip でインストールしていたモジュールもごっそり再インストール。
[ ツッコむ ]
#2 [python] Pyxelを1.3.0にした
Pyxel は、Python を使ってファミコンライクな2Dゲームが作れるようになる、ファンタジーコンソールの一種。気づいたら 1.3.0 が公開されていたのでアップデート。環境は Windows10 x64 1909 + Python 3.8.2 64bit。
_pyxel/README.ja.md at master - kitao/pyxel
Pyxel 1.3.0 からは、Python 3.8.x 以降でしか動かなくなったらしい。Python 3.7.6 64bit版上にインストールしてみたら、サンプルを動かそうとしてもエラーが出てしまって…。仕方ないので、Python 3.7.6 とは別に、Python 3.8.2 64bit版もインストールして、そちらに Pyxel 1.3.0 をインストール。
Python 3.7.x で使いたければ、Pyxel 1.2.10 を指定してインストールすればなんとかなりそう。
パレット値も、PICO-8互換のパレット値ではなく、独自のパレット値に変わったらしい。画面の色合いが随分変わってしまった…。
_Pyxel's new palette - Issue #217 - kitao/pyxel
_pyxel/README.ja.md at master - kitao/pyxel
pip install pyxel or pip install -U pyxel
Pyxel 1.3.0 からは、Python 3.8.x 以降でしか動かなくなったらしい。Python 3.7.6 64bit版上にインストールしてみたら、サンプルを動かそうとしてもエラーが出てしまって…。仕方ないので、Python 3.7.6 とは別に、Python 3.8.2 64bit版もインストールして、そちらに Pyxel 1.3.0 をインストール。
Python 3.7.x で使いたければ、Pyxel 1.2.10 を指定してインストールすればなんとかなりそう。
pip install pyxel==1.2.10
パレット値も、PICO-8互換のパレット値ではなく、独自のパレット値に変わったらしい。画面の色合いが随分変わってしまった…。
_Pyxel's new palette - Issue #217 - kitao/pyxel
[ ツッコむ ]
#3 [python] PySide2を試用
せっかく Python を更新したことだし、PySide も更新、しようと思ったら今時は PySide ではなくて PySide2 があるらしいのでそちらをインストールして試用中。環境は Windows10 x64 1909 + Python 3.7.6 64bit + PySide2 5.14.1。
PySide 用のスクリプトを PySide2 で動くように修正しているけれど、import文のあたりを変更すれば、ある程度は動きそうではあるなと…。
QtWidgets 以下に移ったクラスが多いようで。QtWidgets.QLabel とか QWidgets.QPushButton とか。PySide用のスクリプトを動かしてみてエラーが出たら、QtWidgets.xxxx にしてみると動くのかもしれない。
PySide 用のスクリプトを PySide2 で動くように修正しているけれど、import文のあたりを変更すれば、ある程度は動きそうではあるなと…。
# PySide from PySide.QtGui import * from PySide.QtCore import * ↓ # PySide2 from PySide2.QtWidgets import * from PySide2.QtGui import * from PySide2.QtCore import *
QtWidgets 以下に移ったクラスが多いようで。QtWidgets.QLabel とか QWidgets.QPushButton とか。PySide用のスクリプトを動かしてみてエラーが出たら、QtWidgets.xxxx にしてみると動くのかもしれない。
◎ addRoundRect()が無い。 :
角丸矩形を描画する、QPainterPath.addRoundRect() が非推奨になっていた。
_Obsolete Members for QPainterPath | Qt 4.8
以下を参考にして自前で処理を書かないといかんということかな…。
_Painter Paths Example ・ Qt for Python
こんな感じになるのかな…。
_Obsolete Members for QPainterPath | Qt 4.8
以下を参考にして自前で処理を書かないといかんということかな…。
_Painter Paths Example ・ Qt for Python
こんな感じになるのかな…。
def myAddRoundeRect(self, x, y, w, h, xr, yr): """Draw round rect.""" x0, y0 = x, y x1, y1 = x + w, y + h p = QtGui.QPainterPath() p.moveTo(x1, y0 + yr * 0.5) p.arcTo(x1 - xr, y0, xr, yr, 0.0, 90.0) p.lineTo(x0 + xr * 0.5, y) p.arcTo(x0, y0, xr, yr, 90.0, 90.0) p.lineTo(x0, y1 - yr * 0.5) p.arcTo(x0, y1 - yr, xr, yr, 180.0, 90.0) p.lineTo(x1 - xr * 0.5, y1) p.arcTo(x1 - xr, y1 - yr, xr, yr, 270.0, 90.0) p.closeSubpath() return p
◎ スタイルがごっそり削除されていた。 :
Motif, CDE, Cleanlooks, Plastique のスタイルが削除されていた…。
_Cleaning up styles in Qt5 and adding Fusion
代わり(?)に、Fusion というスタイルが追加されたようで。
_Cleaning up styles in Qt5 and adding Fusion
代わり(?)に、Fusion というスタイルが追加されたようで。
[ ツッコむ ]
以上、1 日分です。