PYQT 窗口类操作

1、设置窗口大小和位置

self.move(int x,int y)  #移动位置

self.setGeometry(int x,int y,int w,int h)  #设置大小和位置

rect = self.geometry()  #获取窗口的几何参数
返回值rect的类型是 QRect, 可以用 rect.left()/ rect.right()/ rect.width()/ rect.height() 分别访问窗口参数

2、设置窗口背景颜色

使用调色板技术,给窗口背景设置颜色
palette = QtGui.QPalette(self)
palette.setColor(self.backgroundRole(), QColor(192, 253, 123))   # 设置背景颜色
#palette1.setBrush(self.backgroundRole(),QtGui.QBrush(QtGui.QPixmap('C:\Users\Administrator\Desktop\001.jpg')))   # 设置背景图片

self.setPalette(palette)

3、设置窗口背景渐变颜色

#使用调色板来实现渐变背景色
#最好写在控件的paintEvent函数中,这样窗口发生变化时也能及时更新窗口的渐变色背景

def paintEvent(self, event):
  
        rect = self.geometry()  #获取窗口几何尺寸

        #定义一种渐变形式
        lineGrad = QtGui.QLinearGradient(0, rect.height()/2, rect.width(), rect.height()/2)
        lineGrad.setColorAt(0, Qt.white)
        lineGrad.setColorAt(0.5, Qt.green)
        lineGrad.setColorAt(1, Qt.blue)
        
        brush = QtGui.QBrush(lineGrad) #定义一个画刷

        palette = QtGui.QPalette(self)   #定义调色板
        palette.setBrush(self.backgroundRole(), brush)  #为调色板设置画刷
        self.setPalette(palette)    #为本控件设置调色板

 4、两窗口同步滚动条技术

#假设窗口中有两个类table1 和 table2, table1和table2中的table要实现滚动条同步:

self.pv1 = ui.table1.table.verticalScrollBar()
self.pv2 = ui.table2.table.verticalScrollBar()
QObject.connect(self.pv1,  SIGNAL("valueChanged(int)"),  self.pv2,  SLOT("setValue(int)"))
QObject.connect(self.pv2,  SIGNAL("valueChanged(int)"),  self.pv1,  SLOT("setValue(int)"))

 5、窗口透明

  self.setWindowOpacity(0.5)

6、窗口背景图片

self.label.setPixmap(QtGui.QPixmap('C:/Users/Administrator/Desktop/image/002.png'))   #路径一定要写对

 

转载于:https://www.cnblogs.com/wangyueyouyi/p/9046333.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值