2017-01-21 37 views
0

以下のコードは、checkboxesという2つの単一のDialogウィンドウを作成します。 2番目のチェックボックスは8x8pxサイズに制限され、setMaximumSize(8, 8)機能があります。 しかし、チェックボックスウィジェットのサイズが小さいことが十字アイコンに適用されていないようです。アイコンはチェックボックスウィジェットの境界線で切り取られます。十字アイコンがチェックボックスウィジェットに比例して拡大縮小されるようにするにはどうすればよいですか?この場合QCheckBoxのサイズ変更の方法

enter image description here

from PyQt4 import QtCore, QtGui 
app = QtGui.QApplication([]) 

panel=QtGui.QDialog() 
panel.setLayout(QtGui.QVBoxLayout()) 

checkbox1 = QtGui.QCheckBox() 
panel.layout().addWidget(checkbox1) 

checkbox2 = QtGui.QCheckBox() 
checkbox2.setMaximumSize(8, 8) 
panel.layout().addWidget(checkbox2) 

panel.show() 
app.exec_() 

答えて

1

それはスタイルシートを使用してサイズを変更するのが最善です:

{your QCheckbox}.setStyleSheet("QCheckBox::indicator { width: npx; height: mpx;}") 

完全なコード:

import sys 

from PyQt4 import QtGui 

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

    panel = QtGui.QDialog() 
    panel.setLayout(QtGui.QVBoxLayout()) 

    checkbox1 = QtGui.QCheckBox("normal1") 
    panel.layout().addWidget(checkbox1) 

    checkbox2 = QtGui.QCheckBox("small") 
    checkbox2.setStyleSheet("QCheckBox::indicator { width: 10px; height: 10px;}") 
    panel.layout().addWidget(checkbox2) 

    checkbox1 = QtGui.QCheckBox("normal2") 
    panel.layout().addWidget(checkbox1) 

    panel.show() 
    sys.exit(app.exec_()) 

enter image description here

関連する問題