1

次のに基づいて構築すると、QCheckBoxの「状態」よりも多くのプロパティを渡す/アクセスするにはどうすればよいですか? この場合、複数のボタンに使用でき、すべてのステータスを dict に保存できる、より動的な関数を構築しようとしています。

このようなもの(「ILCheckbox_changed」定義の「state」で使用される「objectName」の正しい名前を主に探しています。おそらく、より一般的には、渡すことができる他のプロパティを見つける方法を探しています)

import sys

from PyQt4.QtGui import *
from PyQt4.QtCore import *

class SelectionWindow(QMainWindow):
    def __init__(self, parent=None):
        super(SelectionWindow, self).__init__()

        self.ILCheck = False
        ILCheckbox = QCheckBox(self)
        ILCheckbox.setCheckState(Qt.Unchecked)

        self.check_box_dict = {}
        ILCheckbox.stateChanged.connect(self.ILCheckbox_changed)

        MainLayout = QGridLayout()
        MainLayout.addWidget(ILCheckbox, 0, 0, 1, 1)

        self.setLayout(MainLayout)

    def ILCheckbox_changed(self, state, objectName):
        self.ILCheck = (state == Qt.Checked)

        print(self.ILCheck)
        self.check_box_dict[objectName] = self.ILCheck

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = SelectionWindow()

    window.show()
    sys.exit(app.exec_())
4

1 に答える 1