我正在處理這個程序。Qt - 動態創建控件
這是一個簡單的鼓生成器,可以產生midi聲音並播放它們。我仍然在設計部分。
我將所有小工具項目一一手動放置。
這是一個單調乏味的工作,我認爲可以通過動態創建它來加快工作速度。
我該如何做到這一點?
正如你可以看到我的代碼看起來像一個爛攤子:
self.kick_1 = QtGui.QCheckBox(self)
self.kick_2 = QtGui.QCheckBox(self)
self.kick_3 = QtGui.QCheckBox(self)
self.kick_4 = QtGui.QCheckBox(self)
self.kick_5 = QtGui.QCheckBox(self)
self.kick_6 = QtGui.QCheckBox(self)
self.kick_7 = QtGui.QCheckBox(self)
self.kick_8 = QtGui.QCheckBox(self)
self.kick_9 = QtGui.QCheckBox(self)
self.kick_10 = QtGui.QCheckBox(self)
self.kick_11 = QtGui.QCheckBox(self)
self.kick_12 = QtGui.QCheckBox(self)
self.kick_13 = QtGui.QCheckBox(self)
self.kick_14 = QtGui.QCheckBox(self)
self.kick_15 = QtGui.QCheckBox(self)
self.kick_16 = QtGui.QCheckBox(self)
self.kick_1.setGeometry(QtCore.QRect(120, 60, 16, 17))
self.kick_2.setGeometry(QtCore.QRect(150, 60, 16, 17))
self.kick_3.setGeometry(QtCore.QRect(180, 60, 16, 17))
self.kick_7.setGeometry(QtCore.QRect(300, 60, 16, 17))
self.kick_4.setGeometry(QtCore.QRect(210, 60, 16, 17))
self.kick_5.setGeometry(QtCore.QRect(240, 60, 16, 17))
self.kick_6.setGeometry(QtCore.QRect(270, 60, 16, 17))
self.kick_14.setGeometry(QtCore.QRect(510, 60, 16, 17))
self.kick_11.setGeometry(QtCore.QRect(420, 60, 16, 17))
self.kick_8.setGeometry(QtCore.QRect(330, 60, 16, 17))
self.kick_9.setGeometry(QtCore.QRect(360, 60, 16, 17))
self.kick_12.setGeometry(QtCore.QRect(450, 60, 16, 17))
self.kick_13.setGeometry(QtCore.QRect(480, 60, 16, 17))
self.kick_10.setGeometry(QtCore.QRect(390, 60, 16, 17))
self.kick_15.setGeometry(QtCore.QRect(540, 60, 16, 17))
self.kick_16.setGeometry(QtCore.QRect(570, 60, 16, 17))
所有這一切都只是爲了創造16個複選框,然後一邊把他們邊(除了30個像素)