在同文件夹下新建一个 测试文档.txt  再运行下面代码,可以实现效果

代码

 1 #!Python3
2 # -*- coding:utf-8 -*-
3
4 """
5 目标:主窗口打开文本文件,修改字体
6
7 文本编辑控件和一个状态栏
8 """
9
10 import sys
11 from PyQt5.QtWidgets import QApplication,QMainWindow,QTextEdit,QAction,QFileDialog,QFontDialog
12 from PyQt5.QtGui import QIcon
13
14 class Example (QMainWindow):
15 def __init__(self):
16 super().__init__()
17 self.initUI()
18
19 def initUI(self):
20 self.textEdit = QTextEdit()
21 self.setCentralWidget(self.textEdit)
22 self.statusBar()
23
24 #打开文件
25 openFile = QAction(QIcon("打开ico.ico"),"打开",self)
26 #定义快捷键
27 openFile.setShortcut("Ctrl+o")
28 openFile.setStatusTip("打开一个文件") #提示语
29 #发送信号
30 openFile.triggered.connect(self.showDialog)
31
32 #改字体
33 chengFont = QAction(QIcon("设置字体ico.ico"),"设置字体",self)
34 #定义快捷键
35 chengFont.setShortcut("Ctrl+A")
36 chengFont.setStatusTip("设置字体") #提示语
37 #发送信号
38 chengFont.triggered.connect(self.chengeFont)
39
40
41 #实例化菜单栏
42 menubar = self.menuBar()
43 #创建菜单
44 fileMenu = menubar.addMenu("&打开文件")
45 fileMenu.addAction(openFile)
46 fileMenu = menubar.addMenu("&设置字体")
47 fileMenu.addAction(chengFont)
48
49 self.setGeometry(300,300,350,300)
50 self.setWindowTitle("打开文件并修改字体")
51 self.show()
52
53 def showDialog(self):
54 fname = QFileDialog.getOpenFileName(self,"打开文件",".") #打开文件当前文件夹下的文件
55 if fname[0]:
56 with open(fname[0],'r') as f:
57 data = f.read()
58 self.textEdit.setText(str(data))
59
60 def chengeFont(self):
61 font,ok =QFontDialog.getFont()
62 if ok:
63 self.textEdit.setFont(font) #打开测试文档里的
64
65 if __name__ == "__main__" :
66 app = QApplication(sys.argv)
67 ex = Example()
68 sys.exit(app.exec_())

PyQt5窗口打开txt文件并设置字体

Python_PyQt5_打开文件并修改字体的更多相关文章

  1. CAD打开文件总是弹出要求选择字体怎么办

    CAD打开文件总是弹出要求选择字体怎么办1.在C:\Documents and Settings\下搜索acad.fmp文件,双击用记事本打开acad.fmp文件,在最后添加内容,上面几行本来就有,不 ...

  2. IDE-IntelliJ IDEA 主题、字体、编辑区主题、文件编码修改、乱码问题

    主题修改 上图标注 1 所示为 IntelliJ IDEA 修改主题的地方,可以通过打开左上角的File -> Setting.在 Windows 系统上 IntelliJ IDEA 默认提供的 ...

  3. IntelliJ IDEA 主题、字体、编辑区主题、文件编码修改

    主题修改 上图标注 1 所示为 IntelliJ IDEA 修改主题的地方,在 Windows 系统上 IntelliJ IDEA 默认提供的主题有四套:Darcula.IntelliJ.Window ...

  4. winform 保存文件 打开文件 选择文件 字体样式颜色(流 using System.IO;)

    string filePath = ""; private void 保存SToolStripMenuItem_Click(object sender, EventArgs e) ...

  5. vs2013修改为双击打开文件

    vs2012和vs2013默认是单击打开文件,让人突然就不习惯了,各种不爽. 修改方法: 工具-选项-环境-选项卡和窗口-不勾选允许在预览选项卡中打开新文件.

  6. CentOS 7下修改rabbitmq打开文件数量方法

    以下为使用systemd的修改方法:   1.系统层修改: 通过修改sysctl配置,提高系统的打开文件数量 vim /etc/sysctl.conf,添加: fs.file-max = 65535 ...

  7. 053_修改 Linux 系统的最大打开文件数量

    #!/bin/bash#往/etc/security/limits.conf 文件的末尾追加两行配置参数,修改最大打开文件数量为 65536 cat >> /etc/security/li ...

  8. 脚本_修改 Linux 系统的最大打开文件数量

    #!bin/bash#作者:liusingbon#功能:修改 Linux 系统的最大打开文件数量#追加两行配置参数到文件/etc/security/limits.conf的末尾,修改最大打开文件数量为 ...

  9. MFC之向导页、消息框、文件选择、字体、颜色(三)

    属性页对话框的分类 属性页对话框想必大家并不陌生,XP系统中桌面右键点属性,弹出的就是属性页对话框,它通过标签切换各个页面.另外,我们在创建MFC工程时使用的向导对话框也属于属性页对话框,它通过点击“ ...

随机推荐

  1. 学习ing

    1.从硬件和逻辑两个角度探讨什么是内存?硬件上看,内存就是电脑上的硬件--内存条.内存通过内存条不同的实现原谅分为DRAM(DRAM已经发展出好多代)和SRAM.从逻辑的角度来说,内存就是一个可以随机 ...

  2. Jira 8.5.1 安装教程

    Jira安装教程 一.CentOS设置 1. 更换阿里源 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/rep ...

  3. mysql复制一个表到其他数据库

    db1为原数据库,db2为要导出到的数据库,fromtable 是要导出的表名1.方法一:登录导出到的数据库,执行create table fromtable select * from db1.fr ...

  4. org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, TopicTest异常解决

    使用RocketMQ发送消息抛出异常,异常如下: 原因: Broker 禁止自动创建Topic,且用户没有通过手动创建此Topic,或者broker 和 Nameserver网络不通: 解决方案: 1 ...

  5. Linux入门到放弃之五《用户管理》

    用户管理 1.创建新用户user123,以此用户登陆系统,在tmp下创建文件test123: 2.修改test123文件的所有者为root,所属组也为root: 需要先切换为root用户 3.修改te ...

  6. ASP.NET Core托管运行Quartz.NET作业调度详解

    Quartz.NET这么NB的作业调度系统,不会还行?   今天介绍一下Quartz.NET的托管运行,官网传送门. 一.前言 Quartz.NET,按官网上的说法,是一款功能齐全的任务调度系统,从小 ...

  7. docker容器学习资料

    现在说起docker容器,你应该不会太陌生了吧?如果你是真的不懂或者是太久没有用到已经忘记的差不多了,那么你需要这一波的干货了,这波的干货刚刚好可以满足你的需要! 话不多说,直接上干货

  8. 印度最大在线食品杂货公司Grofers的数据湖建设之路

    1. 起源 作为印度最大的在线杂货公司的数据工程师,我们面临的主要挑战之一是让数据在整个组织中的更易用.但当评估这一目标时,我们意识到数据管道频繁出现错误已经导致业务团队对数据失去信心,结果导致他们永 ...

  9. 拖拽编写SVG图形化工具(二)

    getAttributesNs/setAttributesNs element.setAttributeNS(namespace,name,value) namespace 是指定属性的命名空间的一个 ...

  10. 18 . Go之操作Mysql和sqlx使用

    安装mysql wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm yum -y localinstall ...