mieki256's diary



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 でインストールしていたモジュールもごっそり再インストール。

#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

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文のあたりを変更すれば、ある程度は動きそうではあるなと…。

# 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

こんな感じになるのかな…。

    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 というスタイルが追加されたようで。

以上、1 日分です。

過去ログ表示

Prev - 2020/03 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project