PyQt/QListWidget/HotPlaylist
2018-12-24 00:08:46 +08:00
..
Data List View 2018-12-24 00:08:46 +08:00
ScreenShot List View 2018-12-24 00:08:46 +08:00
flowlayout.py List View 2018-12-24 00:08:46 +08:00
README.md List View 2018-12-24 00:08:46 +08:00
TencentMovieHotPlay.py List View 2018-12-24 00:08:46 +08:00
TencentMovieHotPlay_Flow.py List View 2018-12-24 00:08:46 +08:00
TencentMovieHotPlay_ListWidget.py List View 2018-12-24 00:08:46 +08:00

腾讯视频热播列表

简单思路说明:

  • 利用QScrollArea滚动显示QGridLayout或者FlowLayout做布局来放置自定义的Widget
  • QNetworkAccessManager异步下载网页和图片
  • QScrollArea滚动到底部触发下一页加载

自定义控件说明:

  • 主要是多个layout和控件的结合其中图片QLabel为自定义通过setPixmap设置图片重写paintEvent绘制底部渐变矩形框和白色文字
  • 字体颜色用qss设置
  • 图标利用了QSvgWidget显示可以是svg 动画(如圆形加载图)

截图

使用QGridLayout 固定列数效果图

截图1

使用自定义布局FlowLayout 自动列数效果图 截图2

使用QListWidget 配合setFlow(QListWidget.LeftToRight)和 setWrapping(True)和 setResizeMode(QListWidget.Adjust)达到类似FlowLayout的效果

截图3