PyQt5学习日记017

一、QDialog功能作用

1.1 模态与非模态对话框
在这里插入图片描述
1.2 常用功能
在这里插入图片描述
1.3 信号
在这里插入图片描述

二、QFontDialog功能作用

2.1 创建

        font = QFont()
        font.setFamily("宋体")
        font.setPointSize(36)
        zt = QFontDialog(font,self)   #创建QFontDialog对象只需传入font类型参数(字体设置)和父对象即可
        zt.open()

2.2 功能作用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、QColorDialog功能作用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、文件选择对话框(QFileDialog)

4.1 获取文件和文件夹
4.1.1 设置获取文件功能
QFileDialog类针对文件的名称、资源地址的获取提供了以下几种方法。

#打开一个文件(如果想打开多个直接在getOpenFileName后面加s即可,如果想打开文件的url,用getOpenFileUrl,多个Url则加s),参数分别是:父对象,对话框名称,文件路径,文件类型(如果有多种类型则用 ;; 隔开),初始文件类型,
result = QFileDialog.getOpenFileName(self,"选择一个Python文件","./","All(*.*);;Image(*.png *.jpg);;Python文件(*.py)","Python文件(*.py)")

在这里插入图片描述

4.1.2 设置文件保存

#传入的参数和打开文件相同
result = QFileDialog.getSaveFileName(self,"选择一个Python文件","./","All(*.*);;Image(*.png *.jpg);;Python文件(*.py)","Python文件(*.py)")

在这里插入图片描述

4.2 选择文件夹

#获取已存在的文件目录
result = QFileDialog.getExistingDirectory(self, "选择一个文件夹", "./")
#获取已存在的文件目录Url
result = QFileDialog.getExistingDirectoryUrl(self, "选择一个文件夹", QUrl("./"))

在这里插入图片描述
4.3 其他功能作用
在这里插入图片描述
在这里插入图片描述
4.4 信号
在这里插入图片描述

五、QInputDialog获取用户数据

5.1 常用静态方法
5.1.1 获取整型和浮点型数据
使用QInputDialog的getInt()方法可以获取用户输入的整型数据,该函数的返回值是一个元组(用户最终输入的数据,False/True),其中False/True表示用户是否按下“ok”键。

result = QInputDialog.getInt(self,"窗口名称","输入框名称",666,6,999,step=3)#666是初始值,6是最小值,999是最大值,步长为3

效果:

在这里插入图片描述
获取浮点型数据使用getDouble(),传入的参数与getInt()基本类似,仅仅多了一个小数保留位数参数,在最大值后面直接加上即可。

5.1.2 获取文本数据
使用getText()方法。

result = QInputDialog.getText(self,"窗口名称","输入框名称",echo=QLineEdit.Password)#echo接受的是输入形式

效果:
在这里插入图片描述
如果想获取多行文本可以用getMultiLineText()result = QInputDialog.getMultiLineText(self, "窗口名称", "输入框名称", "初始文本")
效果:
在这里插入图片描述
当然,用户可以继续向上图的输入框中继续输入字符,按下ok键后,result变量会接收到一个元组(用户输入的数据,True/False)
5.1.3 获取选择下拉框中的内容

result = QInputDialog.getItem(self, "窗口名称", "输入框名称", ["1","2","3"],1,True)#["1","2","3"],1,True三个参数分别表示可迭代对象,初始项索引,是否可编辑

效果:
在这里插入图片描述
最终输入数据可以通过result接受的元组获取。
5.2 功能
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5.3 信号
在这里插入图片描述

六、QCalenderWidget日期输入控件

6.1 创建控件

cw = QCalenderWidget(self)

6.2 设置日期范围

cw.setMinimum(QDate(1990,1,1)) #设置最小日期是1990年1月1日
cw.setMaximum(QDate(2026,1,1)) #设置最大日期是2026年1月1日
cw.setDateRange(QDate(1990,1,1),QDate(2026,1,1))#设置日期范围是19901月1日至2026年1月1日

6.3 设置日期编辑
6.3.1 设置日期选择可用键盘编辑

cw.setDateEditEnabled(True)

6.3.2 设置选择后确定日期的延迟秒

cw.setDateEditAcceptDelay(3000)   #选择日期3s后,选择生效

6.4 获取控件中的日期

cw.monthShown()#展示当前年
cw.yearShown()#展示当前月
cw.selectedDate()#展示所选中的日期(年月日)

6.5 外观格式设置

cw.setNavigationBarVisible(False) #设置导航条不可见
cw.setFirstDayOfWeek(Qt.Sundy)  #设置一周中周日为第一天
cw.setGridVisible(True)  #设置网格条可见

6.7 文本格式设置

#先创建格式对象
gs = QTextCharFormat()
gs.setFontFamily("黑体")
gs.setFontPointSize(16)
gs.setFontUnderLine(True) #设置字体下划线显示
#把格式对象塞进目标文本方法里,例如这里是改变头部文本格式
cw.setHeadTextFormat(gs)

6.8 选中

cw.setSeclectionMode(QCalenderWidget.NoSelection) #设置无法点击选中

6.9 展示某一目标日期
在这里插入图片描述
6.10 信号
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值