博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用pyqt5做一个能python程序能插入图片的ide
阅读量:7122 次
发布时间:2019-06-28

本文共 4733 字,大约阅读时间需要 15 分钟。

之前只是放到github上了,现在一想应该开源,大家想继续做好这个ide的都能从这里起步.

#注意在.py文件相同目录下放一个1.png做测试图片#本质就是用html来实现图片#写在前面的话:这个程序在python自带ide里面遇到bug就秒退,看不了提示信息#解决方法如下:#用cmd 在文件目录里面执行python lastversion.py即可运行#并且可以进行调试,会返回出错信息,比自带ide好多了.#总之:别用ide来调试.#English for upper Chinese:#use cmd 's command  python lastversion.py to run this programe.#cause it's more convinient to debugfrom PyQt5 import QtWidgets  from PyQt5.QtWidgets import QFileDialog  from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtCore import *from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtWidgets import QFileDialogfrom PyQt5 import QtWidgets  from PyQt5.QtWidgets import QFileDialogimport codecsimport sysimport osdef i(a,*arg):    f=open(a,'w')    print(888888888888)    print (arg)    f.write(arg[0]) #我之前出错全是因为write里面不能写数字                 #只能写字符串,这点跟print不一样.    f.close()    passclass MyWindow(QtWidgets.QWidget):      def __init__(self):          super(MyWindow,self).__init__()        self.resize(800,800)        self.myButton = QtWidgets.QPushButton(self)          self.myButton.setObjectName("myButton")          self.myButton.setText("Open")          self.myButton.clicked.connect(self.load)          self.myButton2 = QtWidgets.QPushButton(self)          self.myButton2.setObjectName("myButton")          self.myButton2.setText("save")          self.myButton2.clicked.connect(self.save)        self.myButton2.move(200,0)        self.myButton3 = QtWidgets.QPushButton(self)          self.myButton3.setObjectName("myButton")          self.myButton3.setText("run")          self.myButton3.clicked.connect(self.run)        self.myButton3.move(400,0)        self.textEdit = QtWidgets.QTextEdit(self)        self.textEdit.setGeometry(QtCore.QRect(10, 40, 801, 521))        self.textEdit.setObjectName("textEdit")        self.textEdit.resize(1500,600)#write something        self.textEdit.insertPlainText('print (42389)')        #下面就是用html语言来插入图片        self.textEdit.insertHtml('' )        #用html来保存就行了,利用下面4行测试了一下效果不错.                                                    def load(self):                  fileName1, filetype = QFileDialog.getOpenFileName(self,                                      "选取文件",                                      "D:/",                                      "Text Files (*.txt)")   #设置文件扩展名过滤,注意用双分号间隔          #read就是全读取这些都好使        text=open(fileName1,'r').read()        print (text)        self.textEdit.setText(text)        i()    def save(self):        fileName2, ok2 = QFileDialog.getSaveFileName(self,                                      "文件保存",                                      "D:/",                                      "All Files (*);;Text Files (*.txt)")        print (fileName2,ok2)        my_text=self.textEdit.toHtml()        print (my_text)##        print (my_text)        my_text=str(my_text)        i(fileName2,my_text)##        a=self.textEdit.toHtml()##        file = open(filename2, 'w')##        #这下面的write也不能跑##        file.write(unicode(a))##        file.close()        #实在受不了这个save函数,it raise error whenever i use write command,i find out to make a function saveout                        ##        my_text=self.textEdit.toPlainText()##        print (my_text)#这东西打印出来最后多一个obj是什么鬼,别人为什么好使??##                        #试了半天还是不行,即使我把图片给删除了也不行.##        filename=QFileDialog.getSaveFileName(self,'save file','C:/',"Text Files (*.txt)")##        print (filename)##        ##        ##        f=open(filename[0],'w')##        ##        #就是下面的write出的毛病##        print (my_text)##        my_text=str(my_text)##        print (my_text)##        f.write(my_text)##        f.close()#跟写的内容没关系,write什么都报错.            def run(self):                a=self.textEdit.toPlainText()                        f = open("file1.py", "w")  # 打开文件                #下面这行write写不了??为什么是不是qt模块冲突        f.write(a)        exit()                f.close()  #关闭文件                b=os.getcwd()        qiemulu='cd '+b        a=os.system(qiemulu)        #这个system模块如果返回是0就是正确,其他数就是错误        os.system(qiemulu)        #现在只能这样用这个方式调用回python自带的ide里面        a=os.system("python file1.py")        os.system("file1.py")        ##        print (a)##        print (type(a))##        file = open('.\run.txt', 'w', 'utf-8')##        ##        print (66)##        file.write((a))##        exit()##        ##        file.close()            if __name__=="__main__":                f = open("file3.py", "w")  # 打开文件        #下面这行write写不了??为什么是不是qt模块冲突    f.write('32131231111111111111111111')    f.close()    print (4324)    app=QtWidgets.QApplication(sys.argv)        myshow=MyWindow()      myshow.show()      sys.exit(app.exec_())
View Code

只是做到了图片的现实和复制粘贴,保存html代码.还需要继续写.至于运行就是调用cmd应该就醒了.

转载于:https://www.cnblogs.com/zhangbo2008/p/8589840.html

你可能感兴趣的文章
bind9报 bad owner name (check-names)错误的解决方法
查看>>
1056. 组合数的和
查看>>
centos 较准时间
查看>>
Linux小白的大师之路
查看>>
小米9售价揭晓!可能是最后一次了
查看>>
py2exe的安装
查看>>
vrrp
查看>>
Gson入门
查看>>
shell 命令记录
查看>>
使用OpenSessionInViewFilter解决session关闭问题
查看>>
lvs基本使用
查看>>
我的友情链接
查看>>
Liferay 用本地私服(nexus) 打包部署Portlet应用
查看>>
敏捷软件开发实践-Code Review Process
查看>>
liunx环境下的oracle安装
查看>>
手把手教你使用Newstart HA
查看>>
JAVA多线程问题【2】 synchronized锁机制
查看>>
redis 安装配置
查看>>
案例2
查看>>
手动挂载分区
查看>>