pyqt5 写一个功能齐全的音乐播放器(第七章)(上)

概要

抱歉呀各位,我几乎每章都会把前一章的代码修改一下bug,这次也不例外,我又又又又改了,放心吧,原理是不会变的,只是一些东西忽视了就把它修复修复,期间时间关系,一些已知bug没修复

这一章主要为大家讲一下各个组件的stylesheet长什么样,这里会用到.stylesheet()方法
qt5 的外观是根据qss 来设置的,qss 大概就是 css2的魔改版本,有好多东西是共通的,但也有些按着它自己的个性来

按钮

用qt designer画过之后都会用setobjectname命名好了,而stylesheet会用到它

QPushbutton#play 这个方法就是像选取id一样的选取当前setobjectname命名的按钮
QPushbutton#play::hover 按钮经过的效果
QPushbutton#play::pressed 按钮按下去之后的效果

滑动条

QSlider::groove:horizontal
QSlider::groove:vertical#滑动条横/竖条
QSlider::handle:horizontal#滑动条指针

表格

表格里面已经给你继承了一个QScrollBar 所以在做stylesheet的时候需要把它也考虑到里面,要说的是,它是不支持 QScrollBar单独设置的,它只能 QScrollBar:horizontal,QScrollBar:vertical,各写一份

QHeaderView 是表头位置
QTableWidget 是表格背景和外框

layout,这个无须多讲,是必要的,但比较简单,跟上面的长的差不多

主窗口

首先我们要隐藏titlebar ,因为妨碍了我们做个性化,然后主窗口我们想把它弄成圆角的 ,单纯使用border-radius 是无法做到的,所以我们也要把窗口背景隐藏,然后我们再加一个和主窗口一毛一样大小label,把它设置成圆角就可以了
嗯就是用的这几个方法
self.setAttribute(Qt.WA_TranslucentBackground)#透明背景
self.setWindowFlags(Qt.FramelessWindowHint)#隐藏titlebar
self.setMinimumSize(self.window_width,self.window_height)#令它无法更改大小

然后…

嗯当你打开的时候你会发现,隐藏了titlebar之后,关闭和最小化按钮也没了,我们需要用到,所以我把之前的Qwidget 为窗口的改为QmainWindow ,因为只有QmainWindow 才可以调用 close 和 showMinimize 方法,然后现在的窗口是不能移动的,所以下一期我们会讲mouseevent

代码在这里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值