PySide をインストールすると、一緒に Qt Designer も入っています。 場所はちょっとわかりづらいですがPython のインストール場所\Lib\site-packages\PySide内にdesigner.exeがあります。 英語ですが、特に問題なく使用できます。
import os import sys from PySide import QtGui, QtUiTools if __name__ == "__main__": app = QtGui.QApplication(sys.argv) # Ui Loader loader = QtUiTools.QUiLoader() # Ui ファイルを読み込んでオブジェクトを取得 ui = loader.load(os.path.dirname(os.path.abspath(sys.argv[0])) + "/Ui.ui") # 表示 ui.show() # 各ウィジェットなどは、デザイナーで設定した名前でアクセスできる ui.exit_action.triggered.connect(app.quit) sys.exit(app.exec_())
pyside-uic.exe Ui.ui > Ui_.py
from PySide.QtCore import * from PySide.QtGui import *
from Ui_2 import *
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.setupUi(self)
if __name__ == "__main__": app = QApplication([]) w = MainWindow() w.show() sys.exit(app.exec_())
→Embed Matplotlib into PyQt as a custom widget
widget = QWidget() palette = QPalette() palette.setColor(QPalette.Background, Qt.black widget.setAutoFillBackground(True) widget.setPalette(palette)
widget = QWidget() widget.setStyleSheet("background-color:white;") widget.show()
self.line_edit = QLineEdit() layout.addWidget(self.line_edit) self.label = QLabel() layout.addWidget(self.label) self.line_edit.textChanged.connect(self.line_edit_text_changed) self.show()
def line_edit_text_changed(self, text): self.label.setText(text)
self.statusbar.showMessage("Error!!! Please check Email and keyfile....")
class MainWindow(QMainWindow, Ui_MainWindow): # シグナルを生成 # ここじゃないとうまく動かない dataLoaded = Signal() dataLoaded = Signal(int)
def analysis(self): # シグナル発行 self.dataLoaded.emit()
@Slot() def changeGAKey(self, key): self.ga_key = key print self.ga_key