PySide2(5.6.2)のpyside2-uic.exeでButtonGroupのあるUIをコンバートできない問題の対処法
前のエントリに続いてビルドしたPySide2で発生する問題の対処法を紹介します。
pyside2-uic.exeでButtonGroupのあるUIをコンバートできない
ビルドしたものをインストールしてこれまで作成したUIをコンバートしたところ、エラーで止まるものがありました。通るものとエラーになるものを比較したところ、エラーになるものはButtonGroupが使われていました。試しに.uiファイルからButtonGroupに関する部分を削除してみたところ、エラーが発生せずにコンバートできました。
この状況を踏まえてバグ情報を探したところ、以下を見つけました。
https://bugreports.qt.io/browse/PYSIDE-658
ビンゴっぽいですね。
上記のページにあるように、Pythonインストールパス\site-packages\pyside2uicフォルダにあるuiparser.pyを以下のように修正します。
元のコードではgetAttributeしたデータのstringプロパティを取得しているようですが、getAttributeでそもそも文字列(strクラスのデータ)が帰ってきている場合、それをそのまま代入するようにコードを追加すれば良いようです。
この修正を行ったところ、ButtonGroupがあってもpyside2-uic.exeでエラーにならず、コンバートが通るようになりました。
この辺の修正も最初に試みたときに修正して使用していたようで、今回新たにビルドしなおしてインストールしたら問題がいろいろ発覚しました。良い機会なので修正方法を記事に残しておきます。
ディスカッション
コメント一覧
まだ、コメントがありません