笔记二 富文本格式
关于设置文字自动换行以及问题:纯数字时自动换行不起作用。
1 # 设置文字为富文本格式,字体大小16pt2 book_name_label = QLabel(3 f"<span style='font-size:16pt'>{book_name}</span>"4 )5 # 设置自动换行6 book_name_label.setWordWrap(True)
一些问题:如果文字是纯数字将不起作用。
笔记三 滚动布局
设置滚动布局:
1 area = QScrollArea()2 widget_area = QWidget()3
4 # 注15 area.setWidgetResizable(True)6
7 layout_area = QVBoxLayout(widget_area)8 layout_area.addStretch(1)9
10 area.setWidget(widget_area)
注1:处理坑,子控件大小和area不一致,设置area的属性。
笔记四 分割线
- 分割线
1 # 设置一个分割线2 frame = QFrame()3 frame.setFrameShape(QFrame.Shape.HLine) # 设置为水平分割线4 frame.setLineWidth(1) # 设置分割线宽度为1像素5 layout_area.addWidget(frame)
- 分割用的矩形
可以用来填充界面。
1 # 创建QFrame2 frame = QtWidgets.QFrame(self)3 frame.setFrameShape(QtWidgets.QFrame.StyledPanel)4 frame.setFrameShadow(QtWidgets.QFrame.Raised)5
6 # 设置尺寸策略为自动扩充7 sizePolicy = QtWidgets.QSizePolicy(8 QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding9 )10 frame.setSizePolicy(sizePolicy)11 frame.setFrameShape(QtWidgets.QFrame.NoFrame)12 # 设置QFrame背景为透明13 frame.setAttribute(QtCore.Qt.WA_TranslucentBackground)14
15 layout.addWidget(frame)
补充
本来以为这个系列可以出很多期,结果现在的项目很快也就写完了,PySide6还有很多不完善的地方,我又开始纠结犹豫,和《纸间书摘》的开发者聊了之后他推荐给我一套新的技术栈,这周终于有时间看了一下,基于compose的安卓开发比以往容易了许多,kotlin+compose终于变得优雅起来了,相比之下感觉比flutter更让人心动?
总之开始学习起来了。