# 创建菜单栏 menuBar = tk.Menu(root) root.config(menu=menuBar) fileMenu = tk.Menu(menuBar, tearoff=0) fileMenu.add_command(label="打开") fileMenu.add_command(label="保存") fileMenu.add_separator() fileMenu.add_command(label="退出", command=root.quit) menuBar.add_cascade(label="文件", menu=fileMenu) # 创建工具栏 toolbar = tk.Frame(root, height=40, bg='#eeeeee') toolbar.pack(side='top', fill='x') # 创建标签页 notebook = ttk.Notebook(root) notebook.pack(fill='both', expand=True) tab1 = tk.Frame(notebook) notebook.add(tab1, text='实时监控') tab2 = tk.Frame(notebook) notebook.add(tab2, text='历史记录')
时间: 2024-02-16 12:01:28 浏览: 172
这段代码是使用Tkinter和ttk模块创建一个窗口应用程序。具体实现的功能如下:
1. 创建一个菜单栏,并添加一个“文件”菜单项,包括“打开”、“保存”和“退出”子菜单项。
2. 创建一个工具栏,高度为40像素,背景颜色为灰色。
3. 创建一个标签页,使用ttk模块的Notebook控件实现。其中,tab1用于实时监控功能,tab2用于历史记录功能。
4. 将标签页添加到Notebook控件中。
在这个窗口应用程序中,菜单栏、工具栏和标签页是常用的界面元素。通过这些元素,用户可以方便地访问不同的功能和操作。
相关问题
class ExcelApp: def __init__(self, master): self.master = master master.title("Excel App") # 获取屏幕的宽度和高度 screen_width = master.winfo_screenwidth() screen_height = master.winfo_screenheight() # 将窗口的大小设置为屏幕的大小 master.geometry("%dx%d" % (screen_width, screen_height)) # 创建菜单栏 menubar = tk.Menu(master) master.config(menu=menubar) # 创建文件菜单及其子菜单 filemenu = tk.Menu(menubar, tearoff=0) filemenu.add_command(label="PA綫點檢表", command=lambda: self.load_excel("D:\點檢系統存放資料夾\點檢明細\點檢内容明細.xlsx")) filemenu.add_command(label="Excel 2", command=lambda: self.load_excel("excel2.xlsx")) filemenu.add_command(label="Excel 3", command=lambda: self.load_excel("excel3.xlsx")) menubar.add_cascade(label="文件", menu=filemenu) # 创建帮助菜单及其子菜单 helpmenu = tk.Menu(menubar, tearoff=0) helpmenu.add_command(label="关于", command=self.show_about) menubar.add_cascade(label="帮助", menu=helpmenu) # 创建工具栏 toolbar = tk.Frame(master, height=30) tk.Button(toolbar, text="打开", command=lambda: QueryWindow(tk.Toplevel(root))).pack(side=tk.LEFT, padx=2, pady=2) tk.Button(toolbar, text="保存", command=self.save_to_excel).pack(side=tk.LEFT, padx=2, pady=2) toolbar.pack(side=tk.TOP, fill=tk.X)怎麽在當前窗口獲取用戶選擇的子菜單文本標簽
可以在load_excel函数中添加一个参数用来接收所选子菜单的文本标签,例如:
```
def load_excel(self, filename, menu_label):
# 打开Excel文件的代码
print("用户选择了子菜单:", menu_label)
```
然后在filemenu.add_command中传递所选子菜单的文本标签:
```
filemenu.add_command(label="PA綫點檢表", command=lambda: self.load_excel("D:\點檢系統存放資料夾\點檢明細\點檢内容明細.xlsx", "PA綫點檢表"))
filemenu.add_command(label="Excel 2", command=lambda: self.load_excel("excel2.xlsx", "Excel 2"))
filemenu.add_command(label="Excel 3", command=lambda: self.load_excel("excel3.xlsx", "Excel 3"))
```
这样,在load_excel函数中就可以获取用户选择的子菜单文本标签了。
class ExcelApp: def __init__(self, master): self.master = master master.title("BL 製造表單點檢系統") # 获取屏幕的宽度和高度 screen_width = master.winfo_screenwidth() screen_height = master.winfo_screenheight() # 将窗口的大小设置为屏幕的大小 master.geometry("%dx%d" % (screen_width, screen_height)) #master.state('zoomed') # 窗口最大化 # 创建菜单栏 menubar = tk.Menu(master) master.config(menu=menubar) # 创建文件菜单及其子菜单 filemenu = tk.Menu(menubar, tearoff=0) filemenu.add_command(label="PA綫", command=lambda: self.load_excel(PA, "PA綫", "PA綫"),compound='left', image='', foreground='black', font=('Microsoft JhengHei', 12)) 创建帮助菜单及其子菜单 helpmenu = tk.Menu(menubar, tearoff=0) helpmenu.add_command(label="关于", command=self.show_about) menubar.add_cascade(label="帮助", menu=helpmenu) # 创建右侧的工具栏 toolbar_frame = ttk.Frame(master, width=0.2) toolbar_frame.pack(side='right', fill='y') # 创建底部的工具栏 bottom_frame = ttk.Frame(master, height=0.2) bottom_frame.pack(side='bottom', fill='x') # 创建工具栏 toolbar = tk.Frame(master, height=0.2)給這個窗口添加一個滾動條滾動窗口的内容
要给这个窗口添加一个滚动条来滚动窗口的内容,你可以使用 `Scrollbar` 和 `Canvas` 组件来实现。以下是一个简单的例子:
```python
from tkinter import *
class ExcelApp:
def __init__(self, master):
self.master = master
master.title("BL 製造表單點檢系統")
# 获取屏幕的宽度和高度
screen_width = master.winfo_screenwidth()
screen_height = master.winfo_screenheight()
# 创建 Canvas 和 Scrollbar
self.canvas = Canvas(master, width=screen_width, height=screen_height)
self.scrollbar = Scrollbar(master, orient=VERTICAL, command=self.canvas.yview)
# 将 Canvas 和 Scrollbar 绑定在一起
self.canvas.configure(yscrollcommand=self.scrollbar.set)
self.scrollbar.pack(side=RIGHT, fill=Y)
self.canvas.pack(side=LEFT, fill=BOTH, expand=True)
# 在 Canvas 中添加内容
# ...
# 调整 Canvas 的可滚动区域
self.canvas.config(scrollregion=self.canvas.bbox("all"))
root = Tk()
app = ExcelApp(root)
root.mainloop()
```
在这个例子中,我们创建了一个 `Canvas` 和一个 `Scrollbar`,并将它们绑定在一起。然后,我们将 `Canvas` 放在窗口的左侧,并将 `Scrollbar` 放在窗口的右侧。最后,我们在 `Canvas` 中添加了一些内容,并调整了它的可滚动区域。你可以根据自己的需求修改这个例子,实现你想要的滚动条效果。
阅读全文
相关推荐














