**pyqt_example_learn<style>

 
  
from PyQt4 import QtCore, QtGui
class WidgetGallery(QtGui.QDialog):
def __init__ (self,parent = None):
super(WidgetGallery,self).
__init__ (parent)

self.palette
= QtGui.QApplication.palette()


combo_box
= QtGui.QComboBox()
combo_box.addItems(QtGui.QStyleFactory.keys())

label
= QtGui.QLabel( ' style ' )
label.setBuddy(combo_box)

check_box_one
= QtGui.QCheckBox( ' use ' )
check_box_one.setChecked(True)

check_box_two
= QtGui.QCheckBox( ' disable ' )

self.createTopLeftGroupBox()
self.createTopRightGroupBox()
self.createBottomLeftTabWidget()
self.createBottomRightGroupBox()
self.createProgressBar()

combo_box.activated[str].connect(self.changeStyle)
check_box_one.toggled.connect(self.changePalette)
check_box_two.toggled.connect(self.topLeftGroupBox.setDisabled)
check_box_two.toggled.connect(self.topRightGroupBox.setDisabled)
check_box_two.toggled.connect(self.bottomLeftTabWidget.setDisabled)
check_box_two.toggled.connect(self.bottomRightGroupBox.setDisabled)

layout_x
= QtGui.QHBoxLayout()
layout_x.addWidget(label)
layout_x.addWidget(combo_box)
layout_x.addStretch(
1 )
layout_x.addWidget(check_box_one)
layout_x.addWidget(check_box_two)

mainLayout
= QtGui.QGridLayout()
mainLayout.addLayout(layout_x, 0, 0,
1 , 2 )
mainLayout.addWidget(self.topLeftGroupBox,
1 , 0)
mainLayout.addWidget(self.topRightGroupBox,
1 , 1 )
mainLayout.addWidget(self.bottomLeftTabWidget,
2 , 0)
mainLayout.addWidget(self.bottomRightGroupBox,
2 , 1 )
mainLayout.addWidget(self.progress_bar,
3 , 0, 1 , 2 )
mainLayout.setRowStretch(
1 , 1 )
mainLayout.setRowStretch(
2 , 1 )
mainLayout.setColumnStretch(0,
1 )
mainLayout.setColumnStretch(
1 , 1 )

self.setLayout(mainLayout)
self.setWindowTitle(
' style ' )
# self.resize(100,100)

def changeStyle(self,styleName):
QtGui.QApplication.setStyle(QtGui.QStyleFactory.create(styleName))
self.changePalette()

def changePalette(self):
if (check_box_one.isChecked()):
QtGui.QApplication.setPalette(QtGui.QApplication.style().standardPalette())
else :
QtGui.QApplication.setPalette(self.originalPalette)

def advanceProgressBar(self):
curval
= self.progress_bar.value()
maxval
= self.progress_bar.maximum()
self.progress_bar.setValue(curval
+ (maxval - curval) / 100 )



def createTopLeftGroupBox(self):
self.topLeftGroupBox
= QtGui.QGroupBox( ' group_one ' )

button1
= QtGui.QRadioButton( ' radio_button_a ' )
button2
= QtGui.QRadioButton( ' radio_button_a ' )
button3
= QtGui.QRadioButton( ' radio_button_a ' )
button1.setChecked(True)

layout
= QtGui.QVBoxLayout()
layout.addWidget(button1)
layout.addWidget(button2)
layout.addWidget(button3)

self.topLeftGroupBox.setLayout(layout)

def createTopRightGroupBox(self):
self.topRightGroupBox
= QtGui.QGroupBox( ' group_two ' )
def createBottomLeftTabWidget(self):
self.bottomLeftTabWidget
= QtGui.QTabWidget()
tab1
= QtGui.QWidget()
table1
= QtGui.QTableWidget( 5 , 5 )

tab1_layout
= QtGui.QHBoxLayout()
tab1_layout.setMargin(
5 )
tab1_layout.addWidget(table1)
tab1.setLayout(tab1_layout)

tab2
= QtGui.QWidget()
table2
= QtGui.QTextEdit()
table2.setPlainText(
' hello world ' )

tab2_layout
= QtGui.QHBoxLayout()
tab2_layout.setMargin(
5 )
tab2_layout.addWidget(table2)
tab2.setLayout(tab2_layout)

self.bottomLeftTabWidget.addTab(tab1,
' table widget ' )
self.bottomLeftTabWidget.addTab(tab2,
' text widget ' )


def createBottomRightGroupBox(self):
self.bottomRightGroupBox
= QtGui.QGroupBox( ' group_three ' )
def createProgressBar(self):
self.progress_bar
= QtGui.QProgressBar()
self.progress_bar.setRange(0,
10000 )
self.progress_bar.setValue(0)

timer
= QtCore.QTimer(self)
timer.timeout.connect(self.advanceProgressBar)
timer.start(
1000 )

if __name__ == ' __main__ ' :

import sys

app
= QtGui.QApplication(sys.argv)
gallery
= WidgetGallery()
gallery.show()
sys.exit(app.exec_())

转载于:https://www.cnblogs.com/eth0/archive/2011/07/10/2102266.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值