之前只是放到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 debug from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QFileDialog
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QFileDialog
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QFileDialog
import codecs
import sys
import os
def i(a,*arg):
f=open(a,'w')
print()
print (arg)
f.write(arg[]) #我之前出错全是因为write里面不能写数字
#只能写字符串,这点跟print不一样.
f.close()
pass
class MyWindow(QtWidgets.QWidget):
def __init__(self):
super(MyWindow,self).__init__()
self.resize(,)
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(,)
self.myButton3 = QtWidgets.QPushButton(self)
self.myButton3.setObjectName("myButton")
self.myButton3.setText("run")
self.myButton3.clicked.connect(self.run)
self.myButton3.move(,) self.textEdit = QtWidgets.QTextEdit(self)
self.textEdit.setGeometry(QtCore.QRect(, , , ))
self.textEdit.setObjectName("textEdit")
self.textEdit.resize(,) #write something
self.textEdit.insertPlainText('print (42389)')
#下面就是用html语言来插入图片
self.textEdit.insertHtml('<img src=1.png>' ) #用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[],'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 ()
## file.write((a))
## exit()
##
## file.close() if __name__=="__main__": f = open("file3.py", "w") # 打开文件 #下面这行write写不了??为什么是不是qt模块冲突
f.write('')
f.close()
print () app=QtWidgets.QApplication(sys.argv)
myshow=MyWindow()
myshow.show()
sys.exit(app.exec_())

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

用pyqt5做一个能python程序能插入图片的ide的更多相关文章

  1. fir.im Weekly - 如何做一个出色的程序员

    做一个出色的程序员,困难而高尚.本期 fir.im Weekly 精选了一些实用的 iOS,Android 开发工具和源码分享,还有一些关于程序员的成长 Tips 和有意思有质量的线下活动~ How ...

  2. 做一个懒COCOS2D-X程序猿(一)停止手打所有cpp文件到android.mk

    前言:”懒”在这里当然不是贬义词,而是追求高效,拒绝重复劳动的代名词!做一个懒COCOS2D-X程序猿的系列文章将教会大家在工作中如何偷懒,文章篇幅大多较短,有的甚至只是几行代码,争取把懒发挥到极致! ...

  3. [daily][optimize] 一个小python程序的性能优化 (python类型转换函数引申的性能优化)

    前天,20161012,到望京面试.第四个职位,终于进了二面.好么,结果人力安排完了面试时间竟然没有通知我,也没有收到短信邀请.如果没有短信邀请门口的保安大哥是不让我进去大厦的.然后,我在11号接到了 ...

  4. NetAnalyzer笔记 之 三. 用C++做一个抓包程序

    [创建时间:2015-08-27 22:15:17] NetAnalyzer下载地址 经过前两篇的瞎扯,你是不是已经厌倦了呢,那么这篇让我们来点有意思的吧,什么,用C#.不,这篇我们先来C++的 Wi ...

  5. 如何用C#做一个悬浮窗口程序

    用C#做一个像FlashGet的悬浮窗口,其实很简单,不像以前需要调用很多系统API.大致的步骤如下. 首先是主窗体部分,即要判断窗体的状态来决定是否显示悬浮窗口. 局部成员声明: private F ...

  6. python 向excel 插入图片

    这是工作中一个真实的需求. 要做gt excel 表,表中要插入图片. 1.要把图片resize 基本相同的大小. 2.通过一下脚本插入图片到excel #!/usr/bin/env python3 ...

  7. 使用python做一个爬虫GUI程序

    整体思路和之前的一篇博客爬虫豆瓣美女一致,这次加入了图片分类,同时利用tkinter模块做成GUI程序 效果如下: 整体代码如下: # -*- coding:utf-8 -*- import requ ...

  8. 做一个合格的程序员之浅析Spring AOP源代码(十八) Spring AOP开发大作战源代码解析

    事实上上一篇文章价值非常小,也有反复造轮子的嫌疑,网上AOP的实例非常多,不胜枚举,事实上我要说的并非这个,我想要说的就是上一节中spring的配置文件: 我们这边并没实用到我们上几节分析的哪几个AO ...

  9. 用pyqt5做一个简易的音乐播放器

    需求 要求可以读取音频文档,有播放和暂停的功能 附上代码(1)UI界面 # -*- coding: utf-8 -*- # Form implementation generated from rea ...

随机推荐

  1. [Flutter] Windows平台Flutter开发环境搭建(Andorid Studio)

    前两天网友在群里说起了Flutter,就了解了一下,在手机上跑了它的demo,直接就被打动了. 虽然网上有很多教程,但真正开始的时候,还是会碰到很多坑.下面详细的讲解Flutter + Android ...

  2. jap 事务

    事物传播行为介绍: @Transactional(propagation=Propagation.REQUIRED) :如果有事务, 那么加入事务, 没有的话新建一个(默认情况下) @Transact ...

  3. mysql 自动执行事件

    首先配置mysql的配置文件my.ini,  加上event_scheduler = 1  开启自动执行事件配置 demo drop event event_test; CREATE EVENT ev ...

  4. MySQL 逻辑备份工具

    简介: Mydumper.Myloader 是一个第三方的.开源的 MySQL 逻辑备份工具. 支持多线程,比起 mysqldump 要快很多,也能解决 innobackupex 备份工具对 MyIS ...

  5. Manta

    安装python客户端: pip install manta import manta as pymanta# cat ${MANTA_PRIVATE_KEY_PATH} | tr '\n' '#' ...

  6. 大型运输行业实战_day03_2_使用ajax将请求页面与请求数据分离

    1.引入jquery 1.添加jquery包 2.在要使用jquery的页面中引入jquery 引入jquery后必须检查是否引入正确,这里值得注意的是 springMVC默认情况先会拦截 js文件, ...

  7. 可能空字符串转换为浮点型或者整数型:java.lang.NumberFormatException: For input string: " "

    Integer.valueOf(str.equals("")?"0":str)

  8. python获取当前日期

    今天群里一个人问了怎么获取当前时间的问题,以前接触过计算日期之差的,具体代码如下: import datetime d1=datetime.datetime(2014,3,14) d2=datetim ...

  9. java并发:读写锁ReadWriteLock

    在没有写操作的时候,两个线程同时读一个资源没有任何问题,允许多个线程同时读取共享资源. 但是如果有一个线程想去写这些共享资源,就不应该再有其它线程对该资源进行读或写. 简单来说,多个线程同时操作同一资 ...

  10. np.array()

    将列表list或元组tuple转换为 ndarray 数组. numpy.array(object, dtype=None, copy=True, order=None, subok=False, n ...