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'))   #路径一定要写对

 

posted on 2018-05-16 15:43  望月又一  阅读(395)  评论(0编辑  收藏  举报