PYQT4.14

# -*- coding: utf-8 -*-

from PyQt4.QtGui import *

from PyQt4.QtCore import *

import sys

QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))

class Palette(QDialog):

def __init__(self,parent=None):

super(Palette,self).__init__(parent)

self.setWindowTitle(self.tr("QPalette对话框"))

mainLayout=QHBoxLayout(self)

self.ctrlFrame=QFrame()

self.contentFrame=QFrame()

self.contentFrame.setAutoFillBackground(True)

self.createCtrlFrame()

self.createContentFrame()

mainLayout.addWidget(self.ctrlFrame)

mainLayout.addWidget(self.contentFrame)

def createCtrlFrame(self):

label1=QLabel("QPalette.Window")

self.windowComboBox=QComboBox()

label2=QLabel("QPalette.WindowText")

self.windowTextComboBox=QComboBox()

label3=QLabel("QPalette.Button")

self.buttonComboBox=QComboBox()

label4=QLabel("QPalette.ButtonText")

self.buttonTextComboBox=QComboBox()

label5=QLabel("QPalette.Base")

self.baseComboBox=QComboBox()

self.fillColorList(self.windowComboBox)

self.fillColorList(self.windowTextComboBox)

self.fillColorList(self.buttonComboBox)

self.fillColorList(self.buttonTextComboBox)

self.fillColorList(self.baseComboBox)

self.connect(self.windowComboBox,SIGNAL("currentIndexChanged(int)"),self.slotWindow)

self.connect(self.windowTextComboBox,SIGNAL("currentIndexChanged(int)"),self.slotWindowText)

self.connect(self.buttonComboBox,SIGNAL("currentIndexChanged(int)"),self.slotButton)

self.connect(self.buttonTextComboBox,SIGNAL("currentIndexChanged(int)"),self.slotButtonText)

self.connect(self.baseComboBox,SIGNAL("currentIndexChanged(int)"),self.slotBase)

gridLayout=QGridLayout()

gridLayout.addWidget(label1,0,0)

gridLayout.addWidget(self.windowComboBox,0,1)

gridLayout.addWidget(label2,1,0)

gridLayout.addWidget(self.windowTextComboBox,1,1)

gridLayout.addWidget(label3,2,0)

gridLayout.addWidget(self.buttonComboBox,2,1)

gridLayout.addWidget(label4,3,0)

gridLayout.addWidget(self.buttonTextComboBox,3,1)

gridLayout.addWidget(label5,4,0)

gridLayout.addWidget(self.baseComboBox)

self.ctrlFrame.setLayout(gridLayout)

def fillColorList(self,comboBox):

colorList=QColor.colorNames()

for color in colorList:

pix=QPixmap(QSize(70,20))

pix.fill(QColor(color))

comboBox.addItem(QIcon(pix),color)

comboBox.setIconSize(QSize(70,20))

comboBox.setSizeAdjustPolicy(QComboBox.AdjustToContents)

def createContentFrame(self):

label1=QLabel(self.tr("请选择一个值"))

valueComboBox=QComboBox()

valueComboBox.addItem("1")

valueComboBox.addItem("2")

label2=QLabel(self.tr("请输入字符串"))

stringLineEdit=QLineEdit()

textEditText=QTextEdit(self.tr("请输入"))

hLayout=QHBoxLayout()

okButton=QPushButton(self.tr("确定"))

cancelButton=QPushButton(self.tr("取消"))

hLayout.addStretch()

hLayout.addWidget(okButton)

hLayout.addWidget(cancelButton)

gridLayout=QGridLayout()

gridLayout.addWidget(label1,0,0)

gridLayout.addWidget(valueComboBox,0,1)

gridLayout.addWidget(label2,1,0)

gridLayout.addWidget(stringLineEdit,1,1)

gridLayout.addWidget(textEditText,2,0,1,2)

gridLayout.addLayout(hLayout,3,0,1,2)

self.contentFrame.setLayout(gridLayout)

def slotWindow(self):

colorList=QColor.colorNames()

color=QColor(colorList[self.windowComboBox.currentIndex()])

p=self.contentFrame.palette()

p.setColor(QPalette.Window,color)

self.contentFrame.setPalette(p)

def slotWindowText(self):

colorList=QColor.colorNames()

color=QColor(colorList[self.windowComboBox.currentIndex()])

p=self.contentFrame.palette()

p.setColor(QPalette.WindowText,color)

self.contentFrame.setPalette(p)

def slotButton(self):

colorList=QColor.colorNames()

color=QColor(colorList[self.windowComboBox.currentIndex()])

p=self.contentFrame.palette()

p.setColor(QPalette.Button,color)

self.contentFrame.setPalette(p)

def slotButtonText(self):

colorList=QColor.colorNames()

color=QColor(colorList[self.windowComboBox.currentIndex()])

p=self.contentFrame.palette()

p.setColor(QPalette.ButtonText,color)

self.contentFrame.setPalette(p)

def slotBase(self):

colorList=QColor.colorNames()

color=QColor(colorList[self.windowComboBox.currentIndex()])

p=self.contentFrame.palette()

p.setColor(QPalette.Base,color)

self.contentFrame.setPalette(p)

app=QApplication(sys.argv)

main=Palette()

main.show()

app.exec_()

时间: 2024-10-06 18:08:59

PYQT4.14的相关文章

PyQt4入门

PyQt4入门教程(6)_对话框 文中译者的话将用方括号[]标出.对话框(Dialogs)是现代GUI程序中不可缺少的一部分.对话本来指的是两个或者更多人之间的交流,而在计算机应用中,对话是一个可以让我们和应用"说话"的窗口.对话框可以用来输入数据.修改数据.更改应用设置等等.QtGui.QInputDialog类QtGui.QInputDialog类提供了一个简单便捷的对话框来从用户处得到一个单值.用户的输入可以是字符串.数字,也... 2016-03-08 00:00 阅读(888

64位Win7搭建Python开发平台(Python3++Ipython_Notebook+Numpy+Scipy+Matplotlib+PyQt4)

Life is short, you need Python! ------ Bruce Eckel(ANSI C++ Comitee member) Python[1]是一门很难让人拒绝学习的程序设计语言,我喜欢它是因为它能很快给人带来成就感,海量的扩展库几乎可以帮助你立刻完成许多看起来很困难的事情.Python的触角已经深入到学习.工作的各个领域,甚至是在科学计算领域也有不俗的表现,许多古老的fortran程序库(如lapack[2])都被封装成了Python的扩展库,继续散发着活力. Py

py2.7+pyqt4开发端口检测工具

使用工具:python2.7,pyqt4,pyinstaller,pywin32 先贴代码 1 import sys 2 from PyQt4 import QtGui,QtCore 3 4 import threading 5 import thread 6 import os 7 import re 8 import urllib 9 import socket 10 import time 11 12 13 global maxNum 14 global cnt 15 global sig

matplotlib+pyqt4 内容整理

最近学习了matplotlib的内容,在这里做一些总结. 参考:vamei博客(Python的也可以看其教程)http://www.cnblogs.com/vamei/archive/2013/01/30/2879700.html http://reverland.org/python/2012/09/07/matplotlib-tutorial/ http://myshare.dscloud.me/scipydoc/matplotlib_intro.html#axis(这个文章很好的解释了fi

Desktop Ubuntu 14.04LTS/16.04科学计算环境配置

Desktop Ubuntu 14.04LTS/16.04科学计算环境配置 计算机硬件配置 cpu i5 6代 内存容量 8G gpu GTX960 显存容量 2G(建议显存在4G以上,否则一些稍具规模的神经网络无法训练,会提示显存容量不足) 配置顺序 安装包 重要依赖 安装ubuntu            14.04   安装显卡驱动         nvidia-367   安装cuda tool kit        8.0   安装cuDNN             v5 安装版本取决

基于cx_freeze编译PyQt4程序(numpy & scipy)

当开发完成PyQt4程序后,需要提供给他人使用,这时最好的办法是将Python程序编译成exe文件. 通常我采用cx_freeze完成这个工作,即编写setup.py文件,执行python setup.py build即可. (1) 对于一般的PyQt4程序,setup.py内容如下: 1 import sys 2 3 from cx_Freeze import setup, Executable 4 5 base = None 6 if sys.platform == 'win32': 7 b

Linux下源码安装PyQt4

从官网上下载PyQt的源码: http://www.riverbankcomputing.com/software/pyqt/ 官网上说:"Before you can build PyQt4 you must have already built and installed SIP" 意思是说必须先安装SIP,于是也下载了SIP. 解压SIP压缩包,进入源码目录,打开README,说是当前目录下有一个build.py,结果我没有找到.但找到了一个configure.py的代码.于是我

Ubuntu 14.04下搭建Python3.4 + PyQt5.3.2 + Eric6.0开发平台

Ubuntu 14.04下搭建Python3.4 + PyQt5.3.2 + Eric6.0开发平台 分类: Linux Ubuntu Oracle 2014-10-14 14:49 3613人阅读 评论(13) 收藏 举报 Ubuntu Python SIP PyQt5 Eric6 目录(?)[+] 引言 找 了很多Python GUI工具集,还是觉得PyQt比较理想,功能强大跨平台,还支持界面设计器.花一天时间折腾了Ubuntu14.04(32位)+ Python3.4 + Qt5.3.2

Python2.7+PyQt4+eric4练习1

今天根据网路上的教程刚刚安装了 PyQt4和eric4,现在就练习一些基础的程序,来大致理解一下我们的PyQt4中包含的主要类库的基础功能, 安装成功后,我们试试看用PyQt4xianshi 显示一个带有我们自定义的图标的窗口 该程序段参考http://blog.csdn.net/bigbennyguo/article/details/50676803 先制作一个自己的icon,保存在随便的一个路径下, 1 # -*- coding: cp936 -*- 2 3 """ we