python ttk separator_Python3 tkinter基础 Menu add_cascade 多级菜单 add_separator 分割线

Python : 3.7.0

OS : Ubuntu 18.04.1 LTS

IDE : PyCharm 2018.2.4

Conda : 4.5.11

typesetting : Markdown

code

"""

@Author : 行初心

@Date : 18-9-30

@Blog : www.cnblogs.com/xingchuxin

@Gitee : gitee.com/zhichengjiu

"""

from tkinter import *

def main():

root = Tk()

menubar = Menu(root)

file_menu = Menu(menubar, tearoff=False) # tearoff=False 表示这个菜单可以被拖拽出来

file_menu.add_command(label='枸杞')

file_menu.add_command(label='梧桐')

file_menu.add_separator() # 一个下拉菜单的分割线

file_menu.add_command(label='酸枣')

menubar.add_cascade(label='木部', menu=file_menu)

root.config(menu=menubar)

mainloop()

if __name__ == '__main__':

main()

result

reference

[文档] docs.python.org/3/library/tkinter.html

resource

[文档] docs.python.org/3

[规范] www.python.org/dev/peps/pep-0008

[规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules

[源码] www.python.org/downloads/source

[ PEP ] www.python.org/dev/peps

[平台] www.cnblogs.com

[平台] gitee.com

Python具有开源、跨平台、解释型和交互式等特性,值得学习。

Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。

GUI可以选择PyQt5、PySide2、wxPython、PyGObject、wxWidgets等进行创作。

代码的书写要遵守规范,这样有助于沟通和理解。

每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

好的,我可以为您提供一个简单的Python Tkinter IDE程序的示例代码: ```python import tkinter as tk from tkinter import ttk from tkinter import scrolledtext from tkinter import messagebox from tkinter.filedialog import asksaveasfile, askopenfile class PyIDE: def __init__(self, master): self.master = master self.master.title("Python IDE") # 创建菜单栏 menu_bar = tk.Menu(self.master) self.master.config(menu=menu_bar) # 创建文件菜单 file_menu = tk.Menu(menu_bar, tearoff=0) file_menu.add_command(label="新建", command=self.new_file) file_menu.add_command(label="打开", command=self.open_file) file_menu.add_command(label="保存", command=self.save_file) file_menu.add_command(label="另存为", command=self.save_as_file) file_menu.add_separator() file_menu.add_command(label="退出", command=self.quit) menu_bar.add_cascade(label="文件", menu=file_menu) # 创建编辑菜单 edit_menu = tk.Menu(menu_bar, tearoff=0) edit_menu.add_command(label="剪切", command=self.cut) edit_menu.add_command(label="复制", command=self.copy) edit_menu.add_command(label="粘贴", command=self.paste) menu_bar.add_cascade(label="编辑", menu=edit_menu) # 创建帮助菜单 help_menu = tk.Menu(menu_bar, tearoff=0) help_menu.add_command(label="关于", command=self.about) menu_bar.add_cascade(label="帮助", menu=help_menu) # 创建文本框 self.text_area = scrolledtext.ScrolledText(self.master, wrap=tk.WORD, undo=True) self.text_area.pack(fill=tk.BOTH, expand=1) def new_file(self): self.text_area.delete(1.0, tk.END) self.master.title("未命名文件") def open_file(self): file = askopenfile(mode="r", filetypes=[("Python Files", "*.py")]) if file is not None: content = file.read() self.text_area.delete(1.0, tk.END) self.text_area.insert(tk.INSERT, content) self.master.title(file.name) def save_file(self): file = open(self.master.title(), "w") file.write(self.text_area.get(1.0, tk.END)) file.close() def save_as_file(self): files = [('Python Files', '*.py')] file = asksaveasfile(filetypes=files, defaultextension=files) if file is not None: content = self.text_area.get(1.0, tk.END) file.write(content) self.master.title(file.name) def cut(self): self.text_area.event_generate("<<Cut>>") def copy(self): self.text_area.event_generate("<<Copy>>") def paste(self): self.text_area.event_generate("<<Paste>>") def about(self): messagebox.showinfo("关于", "Python IDE v1.0") def quit(self): self.master.quit() if __name__ == "__main__": root = tk.Tk() ide = PyIDE(root) root.mainloop() ``` 这个IDE程序包括了基本的文件操作和文本编辑功能。您可以自行修改和扩展这个程序来满足您的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值