圆月山庄资源网 Design By www.vgjia.com
前面我们给了Tkinter接管Python输入和输出的介绍,我们不难可以想到,能用Tkinter来开发自己的Python代码编辑器.例如可以使用Text控件作代码编辑器.
实际上我在HP_tk2中已经封装好了现成的中文Python代码编辑器组件和防Ipython功能的组件,另用这2个组件很容易搭建出自己的代码编辑器.
下面直接给出完整演示源代码.
#中文可视化Python开发系统.py import tkinter as tk #导入Tkinter import tkinter.ttk as ttk #导入Tkinter.ttk import tkinter.tix as tix #导入Tkinter.tix from tkinter.filedialog import * from tkinter.messagebox import * import PIL from PIL import Image, ImageTk, ImageDraw, ImageFont import HP_tk2 as htk #导入htk import webbrowser import os import sys import threading import time #建立应用窗口 root=htk.MainWindow(title='中文Python代码编辑器',x=0,y=0,w=1200, h=800,picture='',zoom=True,center=True) root.iconbitmap('ico/cp64.ico') #设置应用程序图标 root.SetCenter() #移动到屏幕中央 #建立菜单 menus = [['文件',['执行程序','-','新建','打开','运行','-','保存','另存为']], ['编辑',['撤销','重做','-','剪切','复制','粘贴','清除','-','全选']], ['显示',['绘图','表格']], ['程序',['运行','编译']], ['项目',['工程设置','系统设置']], ['数据',['连接行情服务器','断开行情服务器','下载股票代码表','下载财务数据', '下载板块数据']], ['帮助',['关于软件','退出']]] mainmenu=htk.windowMenu(root,menus) #窗口菜单 toolsbar=htk.ToolsBar(root,6,bg='yellow') #创建工具栏,参数1-20 toolsbar.pack(side=tk.TOP, fill=tk.X) #改变工具条图标 png1= PIL.ImageTk.PhotoImage(PIL.Image.open('ico/New2.ico')) png2= PIL.ImageTk.PhotoImage(PIL.Image.open('ico/APS0.ico')) png3= PIL.ImageTk.PhotoImage(PIL.Image.open('ico/class.ico')) png4= PIL.ImageTk.PhotoImage(PIL.Image.open('ico/clxokcnhlp1.ico')) png5= PIL.ImageTk.PhotoImage(PIL.Image.open('ico/Table.ico')) toolsbar.config(0,image=png1) toolsbar.config(1,image=png2) toolsbar.config(2,image=png3) toolsbar.config(3,image=png4) toolsbar.config(4,image=png5) #创建状态栏 status=htk.StatusBar(root) #建立状态栏 status.pack(side=tk.BOTTOM, fill=tk.X) status.clear() #清空状态栏信息 status.text(0,'状态栏') #在状态栏0输出信息 status.text(1,'超越自我!') #在状态栏2输出信息 status.text(2,'人生苦短,学习中文Pyhthon3 !') #在状态栏2输出信息 status.text(3,'设计:独狼') status.text(4,'版权所有!') status.text(5,'侵权必究!') status.config(1,color='red') #改变状态栏2信息颜色 status.config(0,color='blue') #改变状态栏0信息颜色 status.config(3,width=14) #改变状态栏3宽度 #分割窗口为左右两部分,m1左,m2右 m1 = tk.PanedWindow(root,showhandle=True, sashrelief=tk.SUNKEN,sashwidth=1,width=200) #默认是左右分布的 m1.pack(fill=tk.BOTH, expand=1) m2 = tk.PanedWindow(orient=tk.VERTICAL, showhandle=True, sashrelief=tk.SUNKEN,height=500) m1.add(m2) #t2是右上画面 t2=tk.Frame(m2,bg='blue',heigh=500) m2.add(t2) ucode=htk.useredit(t2,fontsize=12) #代码编辑框 ucode.fontsize=12 m2.paneconfig(t2,heigh=500) #T3是右下画面 t3=tk.Frame(m2,bg='yellow',heigh=150) m2.add(t3) umess=htk.useredit2(t3,fontsize=12) #信息输出框 m2.paneconfig(t3,heigh=3150) htk.ttmsg=umess.textPad #绑定信息输出变量, ucode.outmess=htk.ttmsg #设置代码输出信息框 label3 = tk.Label(umess.statusbar ,width=5, text='AI对话:') label3.pack(side=tk.LEFT) us=tk.StringVar(value='') us2=tk.Entry(umess.statusbar,width=110, textvariable=us) us2.pack(side=tk.LEFT) path='./guide' ucode.loadfile(path+'/软件说明.txt') global timer def fun_timer2(): global timer def fun_timer(): global timer dt=time.strftime(' %Y-%m-%d %H:%M:%S',time.localtime(time.time())) status.text(1,dt) #在状态栏2输出信息 timer = threading.Timer(1, fun_timer) timer.start() timer = threading.Timer(1, fun_timer) timer.start() htk.thread_it(fun_timer2()) def udestroy(): global timer timer.cancel() root.udestroy=udestroy root.mainloop() #开启tk主循环
程序运行结果如下:
上面给出的是部分演示代码,如果继续深入开发,完全可以实现IDEL编辑器的功能.
上面的Python代码编辑器模块,我们已经用在商业化的小白量化软件中了.
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月02日
2024年11月02日
- 《暗喻幻想》顺风耳作用介绍
- 崔健1985-梦中的倾诉[再版][WAV+CUE]
- 黄子馨《追星Xin的恋人们2》HQ头版限量编号[WAV+CUE]
- 孟庭苇《情人的眼泪》开盘母带[低速原抓WAV+CUE]
- 孙露《谁为我停留HQCD》[低速原抓WAV+CUE][1.1G]
- 孙悦《时光音乐会》纯银CD[低速原抓WAV+CUE][1.1G]
- 任然《渐晚》[FLAC/分轨][72.32MB]
- 英雄联盟新英雄安蓓萨上线了吗 新英雄安蓓萨技能介绍
- 魔兽世界奥杜尔竞速赛什么时候开启 奥杜尔竞速赛开启时间介绍
- 无畏契约CGRS准星代码多少 CGRS准星代码分享一览
- 张靓颖.2012-倾听【少城时代】【WAV+CUE】
- 游鸿明.1999-五月的雪【大宇国际】【WAV+CUE】
- 曹方.2005-遇见我【钛友文化】【WAV+CUE】
- Unity6引擎上线:稳定性提升、CPU性能最高提升4倍
- 人皇Sky今日举行婚礼!电竞传奇步入新篇章