主菜单制作

你好,请进入Q群:225792826,免费下载本站最新提供的视频教程原创源码资料,从2020年2月20号到3月底,成为本站会员只要原价的3折,即2980元*0.3 = 894元 ,向微信scratch8付款即可成为本站会员。即可拥有本站所有原创资源,并提供技术支持。如本消息修改,以最后时间的为准。

"""
   主菜单制作,本程序重定义_Root类的__init__,增加了createmenu方法,
   关于Root类,请查看turtle.py文件.
   本程序用Python精灵模块开发,需要先在cmd下用命令:
   pip install sprites进行安装。
"""

from sprites import *
from turtle import _Root,ScrolledCanvas
from tkinter.scrolledtext import ScrolledText

# 下面的TK即是tkinter ,从sprites已经导入。
def root__init(self):
    TK.Tk.__init__(self)       # 新建窗口
    # 这个做为背景框架
    self.frame_bg = TK.Frame(self,bg='#e2a2e5',padx=8,pady=8)
    self.frame_bg.pack(expand=1,fill='both')
    
    self.frame_left = TK.Frame(self.frame_bg,bg='#3200f0',padx=8,pady=8)
    self.frame_left.pack(side=TK.LEFT,expand=1,fill='both')
    
    self.frame_right = TK.Frame(self.frame_bg,bg='#00e200',padx=8,pady=8)
    self.frame_right.pack(side=TK.RIGHT,expand=1,fill='both')    

    self.createmenu()    

def root_createmenu(self):
        
    # 创建一个顶级菜单
    menubar = TK.Menu(self)
     
    # 创建一个下拉菜单“文件”,然后将它添加到顶级菜单中
    filemenu = TK.Menu(menubar, tearoff=False)
    filemenu.add_command(label="打开", command=lambda:showinfo('hi',''))
    filemenu.add_command(label="保存", command=lambda:showinfo('hi',''))
    filemenu.add_separator()
    filemenu.add_command(label="退出", command=lambda:self.destroy())
    menubar.add_cascade(label="文件", menu=filemenu)
     
    # 创建另一个下拉菜单“编辑”,然后将它添加到顶级菜单中
    editmenu = TK.Menu(menubar, tearoff=False)
    editmenu.add_command(label="剪切", command=lambda:showinfo('hi',''))
    editmenu.add_command(label="拷贝", command=lambda:showinfo('hi',''))
    editmenu.add_command(label="粘贴", command=lambda:showinfo('hi',''))
    menubar.add_cascade(label="编辑", menu=editmenu)
     
    # 显示菜单
    self.config(menu=menubar)

def root_setupcanvas(self,width,height,cwidth,cheight):
    """设置画布"""
    self._canvas = ScrolledCanvas(self.frame_left, width, height, cwidth, cheight)
    self._canvas.pack(expand=1, fill="both")

# 重定义_Root类的初始化方法和setupcanvas方法,增加了createmenu方法以便添加菜单
_Root.createmenu = root_createmenu
_Root.__init__ = root__init
_Root.setupcanvas = root_setupcanvas

screen = Screen()
screen.setup(960,640)
root = screen._root
screen.title('主菜单制作 by 李兴球  www.lixingqiu.com')

cat = Sprite(2)

b0 = TK.Button(root.frame_left,text='风火轮编程',command=lambda:cat.bk(10))
b0.pack()

codetext = ScrolledText(master=root.frame_left,bg='white',
                     font=('新宋体',12,'normal'),width=40,height=0)
codetext.tag_configure("sel", background="skyblue")                   # 选择的时候为天蓝色
codetext.configure(undo=True,autoseparators=True, maxundo=-1)         # 让撤销发生作用
codetext.pack(expand=1, fill="both")
codetext.insert(TK.END, 'from turtle import *')

b1 = TK.Button(root.frame_right,text='右测试按钮',command=lambda:cat.fd(10))
b1.pack()

screen.mainloop()

本站所有作品,教程等皆为原创,盗版必究。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。亦可直接向微信号scratch8付款购买。QQ群免费教学群:225792826 (提供真实姓名可入群)
李兴球的博客_Python创意编程技术前沿 » 主菜单制作

学本领,探索更大的世界!

李兴球博客 风火轮编程主页