PySide Progressbarを表示してみる
QProgressDialogを使うと一番簡単であります
import sys from PySide import QtGui app = QtGui.QApplication(sys.argv) prog = QtGui.QProgressDialog('何か処理しています...', 'キャンセル', 0, 100, None, 0) prog.show() prog.setValue(50) sys.exit(app.exec_())
キャンセルボタンなくしたい
コンストラクタのキャンセルボタンのテキストにNoneを指定
QtGui.QProgressDialog('何か処理しています...', None, 0, 100, None, 0)
ウインドウのボタンを消したい
コンストラクタの最後の引数でウインドウフラグを指定
QtGui.QProgressDialog('何か処理しています...', 'キャンセル', 0, 100, None, QtCore.Qt.Window | QtCore.Qt.WindowTitleHint | QtCore.Qt.CustomizeWindowHint)
リサイズなくしたい
setFixedSizeを呼ぶ
prog.setFixedSize(prog.sizeHint())
Marqueeスタイル(進捗表示しないで処理の終了だけ待つやつ)にしたい
プログレスバーの範囲を 0 ~ 0 にする
QtGui.QProgressDialog('何か処理しています...', 'キャンセル', 0, 0, None, 0)
バー横の空白が残る場合は進捗表示テキストをセンター寄せすればいい
prog.setStyleSheet('QProgressBar {text-align: center;}')