用python创建一个简单的GUI程序,python小案例

import tkinter

这一行导入了tkinter库,这是Python中用于创建图形用户界面(GUI)的标准库之一

import tkinter as tk

这一行同样导入了tkinter库,但是使用了as关键字给它起了一个别名tk,这样在代码中就可以使用tk来代替tkinter了,使代码更简洁。

window = tk.Tk()

创建一个Tkinter的窗口实例,并将这个实例赋值给变量window。这个窗口是GUI程序的主窗口

window.title('my window')

设置了这个主窗口的标题为"my window"

window.geometry('200x300')

window.geometry('200x300')

设置了主窗口的大小为200x300像素

var=tk.StringVar()

创建一个StringVar对象,这是Tkinter中用来管理窗口控件如标签(label)等的文本的对象。

var.set('Guess who I am?')
t = tk.Label(window,textvariable=var,bg='pink',font=('Arial',12),width = 30,height=2)

创建一个标签(label),这个标签的父窗口是window,文本内容由var变量(StringVar对象)控制,背景颜色为粉红色,字体使用12号的Arial,宽度设置为30(这里的宽度和高度单位不是像素,而是文本的单位大小),高度为2。

t.pack()

在这里插入图片描述

将创建的标签(label)添加到主窗口中,并使用pack方法自动调整其位置。

on_hit=False

定义一个全局变量on_hit,初始值设为False。这个变量用来追踪按钮是否被点击过。

def hit_me():
    global on_hit
    if on_hit:
        on_hit=False
        var.set('Guess who I am?')
    else:
        on_hit=True
        var.set('handsome boy')

b=tk.Button(window,text='hit me',width=15,height=2,command=hit_me)
  1. 定义了一个名为hit_me的函数,这个函数会根据on_hit变量的值改变var变量的内容。如果on_hit是True,就将var的值设置为"Guess who I am?“,并将on_hit设置为False。如果on_hit是False,就将var的值设置为"handsome boy”,并将on_hit设置为True。
  2. b=tk.Button(window,text=‘hit me’,width=15,height=2,command=hit_me): 创建了一个按钮(button),这个按钮的父窗口是window,按钮上的文本是"hit me",宽度为15,高度为2,当按钮被点击时,会调用之前定义的hit_me函数。
b.pack()

将创建的按钮添加到主窗口中,并使用pack方法自动调整其位置。

window.mainloop()

在这里插入图片描述

在这里插入图片描述

这一行启动了Tkinter的事件循环,这意味着窗口将持续显示,并且程序将等待和响应用户的操作,比如点击按钮。

  • 12
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'aaa.ui' # # Created by: PyQt5 UI code generator 5.11.3 # # WARNING! All changes made in this file will be lost! import sys, os from PyQt5 import QtCore, QtWidgets, QtGui from PyQt5.QtCore import * from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5 import QtCore, QtGui, QtWidgets class U_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1204, 836) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) MainWindow.setSizePolicy(sizePolicy) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.tableWidget = QtWidgets.QTableWidget(self.centralwidget) self.tableWidget.setGeometry(QtCore.QRect(80, 240, 1041, 371)) self.tableWidget.setAutoScrollMargin(9) self.tableWidget.setRowCount(9) self.tableWidget.setColumnCount(8) self.tableWidget.setObjectName("tableWidget") item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(0, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(1, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(2, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(3, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(4, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(5, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(6, item) item = Q
PythonGUI(图形用户界面)可以使用多种库和工具。其中最常用的包括Tkinter、PyQt和wxPython。 Tkinter是Python自带的GUI库,因此不需要安装任何额外的模块。它提供了丰富的GUI组件,如按钮、文本框和标签,以及布局管理器,如网格和排列。使用Tkinter,可以创建简单的窗口应用程序,只需几行代码即可快速搭建界面。 PyQt是基于Qt库的Python绑定,可以创建功能强大、美观的GUI应用程序。相比Tkinter,PyQt提供了更多的组件和功能。它使用C++开发,因此运行速度较快。PyQt有两个版本可供选择,即PyQt4和PyQt5。前者适用于Python2.x,后者适用于Python3.x。通过学习PyQt的文档和示例,可以创建复杂的GUI程序,满足特定的需求。 wxPython是基于C++库wxWidgets的Python绑定,同样适用于创建GUI应用程序。它提供了跨平台的支持,可以在不同的操作系统上运行。wxPython使用简单的语法和API,并且具有大量的组件可供选择。此外,它还提供了类似于事件处理和布局管理器的高级特性。 以上这些库都可以用来编写GUI应用程序,选择哪一个取决于个人的喜好和项目的需求。使用Python编写GUI应用程序可以显著地提高开发效率,并且由于Python语言的简洁和易读性,也使得代码更加易于维护。无论选择哪个库,都需要学习其基本的语法和使用方法,以便顺利地开发出符合预期的GUI应用程序

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值