热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何用快捷键或绑定激活Tkinter菜单和工具栏?

如何用快捷键或绑定激活Tkinter菜单和工具栏?原文:ht

如何用快捷键或绑定激活 Tkinter 菜单和工具栏?

原文:https://www . geeksforgeeks . org/如何使用快捷键或绑定激活菜单和工具栏/

您可能已经在各种桌面应用程序中看到了菜单栏和工具栏,它们是通过快捷键打开的。难道你不知道如何创建这样一个菜单栏和工具栏,通过快捷键打开吗?读一读这篇文章,了解做同样事情的步骤。

要使用快捷键激活菜单栏和工具栏,请分别使用菜单栏和工具栏中要执行的所有操作创建菜单栏和工具栏的功能。在为菜单栏和工具栏创建了函数之后,编写以下代码来激活菜单栏和工具栏。

app . bind(' T0 ',#菜单栏功能)

app . bind(' T0 ',#工具栏功能)


分步实施:

第一步:首先导入库 tkinterttk

from tkinter import *
from tkinter import ttk

步骤 2: 现在,使用 tkinter 创建一个 GUI 应用程序。

app=Tk()

第三步:然后,为你的应用设置标题和几何图形。

app.title(“#Title of the app”)
app.geometry('#Dimensions you want to set of an app')

第 4 步:接下来,用事件声明菜单栏的函数为无,这样它对每种情况都有效。

def menubar_shortcut(event=None):

一旦声明了函数,就在其中创建菜单栏。

menubar = Menu()

在菜单栏的功能中,声明所有你想在菜单栏中显示的小部件。这里,我们在菜单栏中添加了文件级联菜单

file=Menu(menubar, tearoff=False)
menubar.add_cascade(label='File', menu=file)

此外,在应用程序中显示菜单栏。

app.config(menu=menubar)

第 5 步:此外,将带有事件的工具栏声明为“无”,以便它适用于所有情况。

def toolbar_shortcut(event=None):

创建工具栏功能后,创建并显示工具栏标签。

toolbar=ttk.Label(app)
toolbar.pack(side=TOP, fill=X)

接下来,创建并显示您想要在工具栏中显示的小部件。这里我们在工具栏中增加了 bold_btn 按钮。

bold_btn=ttk.Button(toolbar, text="Bold")
bold_btn.grid(row=0, column=0, padx=5)

第六步:一旦你创建了菜单栏和工具栏的功能,用快捷键绑定菜单栏和工具栏。这里增加快捷键【Ctrl+p】激活菜单栏,【Ctrl+q】激活工具栏。

app.bind('', menubar_shortcut)
app.bind('', toolbar_shortcut)

第 7 步:最后,最后,进行在屏幕上显示 GUI 应用的循环

app.mainloop()

以下是完整实现:

计算机编程语言

# Python program to activate menu and toolbar
# with keyboard shortcut key
# Import the libraries tkinter and ttk
from tkinter import *
from tkinter import ttk
# Create a GUI app
app = Tk()
# Setting the title and geometry of the app
app.title('Vinayak App')
app.geometry('600x400')
# Creating function for menu bar
def menubar_shortcut(event = None):
    menubar = Menu()
    # Declare file and edit for showing in menu bar
    file = Menu(menubar, tearoff = False)
    edit = Menu(menubar, tearoff = False)
    # Display file and edit declared in previous step
    menubar.add_cascade(label = 'File', menu = file)
    menubar.add_cascade(label = 'Edit', menu = edit)
    # Display of menu bar in the app
    app.config(menu = menubar)
# Creating function for tool bar
def toolbar_shortcut(event = None):
    # Creating and displaying label for toolbar
    toolbar = ttk.Label(app)
    toolbar.pack(side = TOP, fill = X)
    # Creating and displaying of Bold button
    bold_btn = ttk.Button(toolbar, text = "Bold")
    bold_btn.grid(row=0, column = 0, padx = 5)
    # Creating and displaying of italic button
    italic_btn = ttk.Button(toolbar, text = "Italic")
    italic_btn.grid(row = 0, column = 1, padx = 5)
# Set up shortcut key for menu bar
app.bind('', menubar_shortcut)
# Set up shortcut key for tool bar
app.bind('', toolbar_shortcut)
# Make the loop for displaying app
app.mainloop()

输出:


推荐阅读
  • 探索偶数次幂二项式系数的求和方法及其数学意义 ... [详细]
  • Python 实战:异步爬虫(协程技术)与分布式爬虫(多进程应用)深入解析
    本文将深入探讨 Python 异步爬虫和分布式爬虫的技术细节,重点介绍协程技术和多进程应用在爬虫开发中的实际应用。通过对比多进程和协程的工作原理,帮助读者理解两者在性能和资源利用上的差异,从而在实际项目中做出更合适的选择。文章还将结合具体案例,展示如何高效地实现异步和分布式爬虫,以提升数据抓取的效率和稳定性。 ... [详细]
  • 在Python多进程编程中,`multiprocessing`模块是不可或缺的工具。本文详细探讨了该模块在多进程管理中的核心原理,并通过实际代码示例进行了深入分析。文章不仅总结了常见的多进程编程技巧,还提供了解决常见问题的实用方法,帮助读者更好地理解和应用多进程编程技术。 ... [详细]
  • 本文深入解析了Python在处理HTML过滤时的实现方法及其应用场景。通过具体实例,详细介绍了如何利用Python代码去除HTML字符串中的标签和其他无关信息,确保内容的纯净与安全。此外,文章还探讨了该技术在网页抓取、数据清洗等领域的实际应用,为开发者提供了宝贵的参考。 ... [详细]
  • 在Python中,是否可以通过使用Tkinter或ttk库创建一个具有自动换行功能的多行标签,并使其宽度能够随着父容器的变化而动态调整?例如,在调整NotePad窗口宽度时,实现类似记事本的自动换行效果。这种功能在设计需要显示长文本的对话框时非常有用,确保文本内容能够完整且美观地展示。 ... [详细]
  • 如何高效启动大数据应用之旅?
    在前一篇文章中,我探讨了大数据的定义及其与数据挖掘的区别。本文将重点介绍如何高效启动大数据应用项目,涵盖关键步骤和最佳实践,帮助读者快速踏上大数据之旅。 ... [详细]
  • HBase Java API 进阶:过滤器详解与应用实例
    本文详细探讨了HBase 1.2.6版本中Java API的高级应用,重点介绍了过滤器的使用方法和实际案例。首先,文章对几种常见的HBase过滤器进行了概述,包括列前缀过滤器(ColumnPrefixFilter)和时间戳过滤器(TimestampsFilter)。此外,还详细讲解了分页过滤器(PageFilter)的实现原理及其在大数据查询中的应用场景。通过具体的代码示例,读者可以更好地理解和掌握这些过滤器的使用技巧,从而提高数据处理的效率和灵活性。 ... [详细]
  • 利用Python进行学生学业表现评估与成绩预测分析
    利用Python进行学生学业表现评估与成绩预测分析 ... [详细]
  • 本文全面解析了 gRPC 的基础知识与高级应用,从 helloworld.proto 文件入手,详细阐述了如何定义服务接口。例如,`Greeter` 服务中的 `SayHello` 方法,该方法在客户端和服务器端的消息交互中起到了关键作用。通过实例代码,读者可以深入了解 gRPC 的工作原理及其在实际项目中的应用。 ... [详细]
  • 在Python网络编程中,多线程技术的应用与优化是提升系统性能的关键。线程作为操作系统调度的基本单位,其主要功能是在进程内共享内存空间和资源,实现并行处理任务。当一个进程启动时,操作系统会为其分配内存空间,加载必要的资源和数据,并调度CPU进行执行。每个进程都拥有独立的地址空间,而线程则在此基础上进一步细化了任务的并行处理能力。通过合理设计和优化多线程程序,可以显著提高网络应用的响应速度和处理效率。 ... [详细]
  • 利用Flask框架进行高效Web应用开发
    本文探讨了如何利用Flask框架高效开发Web应用,以满足特定业务需求。具体案例中,一家餐厅希望每天推出不同的特色菜,并通过网站向顾客展示当天的特色菜。此外,还增加了一个介绍页面,在bios路径下详细展示了餐厅主人、厨师和服务员的背景和简介。通过Flask框架的灵活配置和简洁代码,实现了这一功能,提升了用户体验和餐厅的管理水平。 ... [详细]
  • 本文介绍了UUID(通用唯一标识符)的概念及其在JavaScript中生成Java兼容UUID的代码实现与优化技巧。UUID是一个128位的唯一标识符,广泛应用于分布式系统中以确保唯一性。文章详细探讨了如何利用JavaScript生成符合Java标准的UUID,并提供了多种优化方法,以提高生成效率和兼容性。 ... [详细]
  • Python 中 json.dumps() 和 json.loads() 的使用方法详解——Python 面试与 JavaScript 面试必备知识
    在 Python 中,`json.dumps()` 和 `json.loads()` 是处理 JSON 数据的核心函数。`json.dumps()` 用于将字典或其他可序列化对象转换为 JSON 格式的字符串,而 `json.loads()` 则用于将 JSON 字符串解析为 Python 对象。本文详细介绍了这两个函数的使用方法及其在 Python 和 JavaScript 面试中的重要性,帮助读者掌握这些关键技能。 ... [详细]
  • 本章节在上一章的基础上,深入探讨了如何通过引入机器人实现自动聊天、表情包回应以及Adidas官方账号的自动抽签功能。具体介绍了使用wxpy库进行微信机器人的开发,优化了智能回复系统的性能和用户体验。通过详细的代码示例和实践操作,展示了如何实现这些高级功能,进一步提升了机器人的智能化水平。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
author-avatar
自由财富大赢家
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有