python 使用tkinter与messagebox写界面和弹窗

目录
  • 1、grid 布局
  • 2、Button 按钮
  • 3、使用:
  • 4、无限循环的小弹窗:

1、grid 布局

说明:

参数说明:

  • sticky:在插件正常尺寸下,分配单元中多余的空间(如果没有声明属性,默认插件居中)
  • NE:靠右上方
  • SE:靠右下方
  • NW:靠左上方
  • N:靠上方
  • E:靠右方
  • S:靠下方
  • W:靠左方
  • N+S:在垂直方向上延伸插件,并保持水平居中
  • E+W:在水平方向上延伸插件,并保持垂直居中
  • N+W:在水平和垂直方向上延伸插件,填满单位
  • N+S+W:在垂直方向上延伸插件,并靠左布放

注意:pack() 和  grid() 是不能同时使用的

  • row: 行
  • column:列

2、Button 按钮

参数说明:

  • :text:按钮名称
  • :fg:按钮的前景色(按钮文本的颜色)
  • :bd:按钮边框的大小,默认为 2 个像素
  • :bg: 按钮的背景色
  • :font: 文本字体,文字字号,文字字形。字形有overstrike/italic/bold/underline
  • :width:按钮的宽度,如未设置此项,其大小以适应按钮的内容(文本或图片的大小)
  • :height: 按钮的高度,如未设置此项,其大小以适应按钮的内容(文本或图片的大小)
  • :image: 按钮上要显示的图片,图片必须以变量的形式赋值给image,图片必须是gif格式
  • :justify: 显示多行文本的时候,设置不同行之间的对齐方式,可选项包括left, right, center
  • :padx: 按钮在x轴方向上的内边距(padding),是指按钮的内容与按钮边缘的距离
  • :pady: 按钮在y轴方向上的内边距(padding)
  • :relief: 边框样式,设置控件显示效果,可选的有:FLAT、SUNKEN、RAISED、GROOVE、RIDGE。
  • :wraplength: 限制按钮每行显示的字符的数量,超出限制数量后则换行显示
  • :underline: 下划线。默认按钮上的文本都不带下划线。取值就是带下划线的字符串索引,为 0 时,第一个字符带下划线,为 1 时,第两个字符带下划线,以此类推
  • :state:按钮状态 (状态要用小写,大写报错)
    • 1、normal  正常
    • 2、active  激活
    • 3、disabled  禁用
  • :command:执行内容(按钮关联的函数,当按钮被点击时,执行该函数)
  • :activebackground: 当鼠标放上去时,按钮的背景色
  • :activeforeground: 当鼠标放上去时,按钮的前景色

3、使用:

from tkinter import *
from tkinter import messagebox  # python3.0的messagebox,属于tkinter的一个组件

top = Tk()  #。生成窗口
top.title("grid test")  #  窗口标题
top.geometry('300x400')  #。窗口大小

def box():
    return messagebox.askyesno(title='弹窗', message='内容')

Popup1 = Button(top, text="按钮1", fg="blue", bd=2, width=5, command=box, state="normal")
Popup1.grid(row=1, column=1, sticky='E')

Popup2 = Button(top, text="按钮2", fg="yellow", bd=2, width=5, command=box, state="normal")
Popup2.grid(row=2, column=2, sticky='NE')

效果:

4、无限循环的小弹窗:

:不选yes,不给通过!

这里需要改一下messagebox内的源代码!

  • 1、进入messagebox内,找到askyesnocancel弹窗方法
  • 2、在方法内把判断修改为一下内容(python会提示是否修改,同意即可)
    if s == CANCEL or s == NO:
        return None
    elif s == YES:
        return YES

代码:

from tkinter import *
from tkinter import messagebox

tk = Tk()
tk.title('测试')
tk.geometry('100x200')
nub = 1

def Popup1():
    global nub
    '''
    askyesnocancel 弹窗:  方法解释是这样的
    Ask a question; return true if the answer is yes, None if cancelled.
    '''
    d = messagebox.askyesnocancel(title='问题', message='python \n你是否愿意继续学习下去?')
    while True:
        if d is None:
            n = Popup2(nub)
            if n is None:
                pass
            else:
                messagebox.showinfo(title=' 提示 ', message='坚持就是胜利!\n加油!一起继续学习下去!')
                #  关闭弹窗
                tk.destroy()
                return
        else:
            return
        nub += 1

def Popup2(value):
    return messagebox.askyesnocancel(title='选择', message='你选择的第%s次' % value)

d = Button(tk, text='开始选择', fg='blue', bd=2, width=10, command=Popup1)
d.grid(row=1, column=1, sticky='NE')

tk.mainloop()

到此这篇关于python 使用tkinter与messagebox写界面和弹窗的文章就介绍到这了,更多相关python 写界面和弹窗内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python中的tkinter库弹窗messagebox详解

    〝 古人学问遗无力,少壮功夫老始成 〞 python之tkinter库弹窗messagebox,常码字不易,出精品更难,没有特别幸运,那么请先特别努力,别因为懒惰而失败,还矫情地将原因归于自己倒霉.你必须特别努力,才能显得毫不费力.如果这篇文章能给你带来一点帮助,希望给飞兔小哥哥一键三连,表示支持,谢谢各位小伙伴们. Tkinter 是 Python 自带的图形界面库,库中包含众多图形界面控件,包括 Lable 标签.Button按钮.Radiobutton单选框.Checkbutton复选框.

  • python+tkinter+mysql做简单数据库查询界面

    目录 一.准备工作: 二.代码: 三.界面 四.总结 一.准备工作: 1.安装mysql3.7,创建一个test数据库,创建student表,创建列:(列名看代码),创建几条数据 (以上工作直接用navicat for mysql工具完成) 二.代码: import sys import tkinter as tk import mysql.connector as sql #--------------------查询函数--------------------------- def sql_

  • Python基础之tkinter图形化界面学习

    一.基础内容 import tkinter as tk from PIL import Image,ImageTk def my(): pwin.destroy() win.deiconify() win = tk.Tk() #win.geometry('320x240+100+50') #长320宽240 右100,下50 win['width']=320 #可以用win.keys()查看哪些可以这样写 win['height']=240 win.title('tkinter图形化专题学习')

  • python 弹窗提示警告框MessageBox的实例

    需要安装pywin32模块,pip install pywin32 ##pip install pywin32 import win32api,win32con ##提醒OK消息框 win32api.MessageBox(0, "这是一个测试提醒OK消息框", "提醒",win32con.MB_OK) ##是否信息框 win32api.MessageBox(0, "这是一个测试是否信息框", "提醒",win32con.MB_

  • 如何Tkinter模块编写Python图形界面

    一.为何使用Tkinter而非PyQt 众所周知,在Python中创建图形界面程序有很多种的选择,其中PyQt和wxPython都是很热门的模块包,这些第三方的图形界面模块功能强大.配置丰富,界面美观,是很多人的选择. 州的先生也经常使用PyQt5来为Python程序写上图形界面,以方便程序的使用. 而今天,我们要介绍的是Python内置的一个图形界面模块--tkinter. 在网络上有很多抱怨Tkinter模块的言论,比如:界面丑.不灵活.扩展功能差.模块少--等等,诚然,Tkinter确实有

  • 在python tkinter界面中添加按钮的实例

    tkinter是python自带的GUI库,可以实现简单的GUI交互,该例子添加了五种不同效果的Button,如图: from tkinter import * from tkinter import messagebox #python3.0的messagebox,属于tkinter的一个组件 top = Tk() top.title("button test") def callback(): messagebox.showinfo("Python command&quo

  • python 使用tkinter与messagebox写界面和弹窗

    目录 1.grid 布局 2.Button 按钮 3.使用: 4.无限循环的小弹窗: 1.grid 布局 说明: 参数说明: sticky:在插件正常尺寸下,分配单元中多余的空间(如果没有声明属性,默认插件居中) NE:靠右上方 SE:靠右下方 NW:靠左上方 N:靠上方 E:靠右方 S:靠下方 W:靠左方 N+S:在垂直方向上延伸插件,并保持水平居中 E+W:在水平方向上延伸插件,并保持垂直居中 N+W:在水平和垂直方向上延伸插件,填满单位 N+S+W:在垂直方向上延伸插件,并靠左布放 注意:

  • 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)

    上一篇我们写了怎么将xmind转换成想要的excel格式,这篇再讲一下用Python自带的tkinter库设计一个简单的gui界面,让我们的xmind路径,用例版本执行等都通过这个gui界面来输入,生成我们需要的excel文件. Python要生成gui,库还是比较多的比如wxpython,这个我看了下,感觉比较难懂,毕竟只是设计一个比较简单的gui界面,所以就使用了tkinter库,感觉这个还是比较方便易懂的,大家可以在这里学习tkinter库http://c.biancheng.net/py

  • 基于python的Tkinter编写登陆注册界面

    tkinter创建登陆注册界面,供大家参考,具体内容如下 import tkinter as tk from tkinter import messagebox #设置窗口居中 def window_info(): ws = window.winfo_screenwidth() hs = window.winfo_screenheight() x = (ws / 2) - 200 y = (hs / 2) - 200 print("%d,%d" % (ws, hs)) return x

  • python tkinter制作用户登录界面的简单实现

    本文只是几年前学习的tkinter的时候写的测试程序,十分之简陋,只是学习用,没什么其他用处. 学习一下莫烦Python的tkinter教程,根据教程制作了用户登录注册页.基本功能为检查登录.注册. 运行如下: ​​​​​​ 代码如下: # -*- coding: utf-8 -*- """ Created on Sun Aug 5 10:34:10 2018 @author: Administrator """ import tkinter a

  • 如何用python GUI(tkinter)写一个闹铃小程序(思路详解)

    事情的起因是帮助一个朋友写一个程序,来控制他们单位的铃声,平时竟然是手动打铃(阔怕) 事情的第一步:理清思路.需要用到python的几个知识:1.tkinter一些函数控件,2.控件和函数之间的联系(主用TreeView控件),3.读写数据入txt文档(高级版可换为数据库),4.数据的类的封装. 需要其他方面的知识:1.简单设计界面布局,2.确保程序易于使用的不反人类细节. 考虑清楚后,那么我开始学习一下相关知识. (1)python中作为面向对象的一份子,Class(类)和Instance(实

  • Python+tkinter制作经典登录界面和点击事件

    目录 前言 环境使用 模块使用 代码部分 导入模块 先做一个大小合适的窗口 账号密码输入框 点击按钮 点击事件绑定 最后效果 前言 Tkinter(即 tk interface) 是 Python 标准 GUI 库,简称 “Tk”:从本质上来说,它是对 TCL/TK 工具包的一种 Python 接口封装.Tkinter 是 Python 自带的标准库,因此无须另行安装,它支持跨平台运行,不仅可以在 Windows 平台上运行,还支持在 Linux 和 Mac 平台上运行. Tkinter 编写的

  • Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解

    本文实例讲述了Python GUI编程学习笔记之tkinter中messagebox.filedialog控件用法.分享给大家供大家参考,具体如下: 相关内容: messagebox 介绍 使用 filedialog 介绍 使用 首发时间:2018-03-04 22:18 messagebox: 介绍:messagebox是tkinter中的消息框.对话框 使用: 导入模块:import tkinter.messagebox 选择消息框的模式: 提示消息框:[返回"ok"] tkint

  • python用tkinter实现一个简易能进行随机点名的界面

    今天学到Python 有一个名为 random 的内置模块,可用于生成随机数, 这个好玩~可以用来做为上课随机点名的程序了哈哈.. def main_cor(): import random i = random.randrange(0,29) with open('roll_call.txt', encoding='utf-8') as file_obj: contents = file_obj.read() stuff = contents.split(' ') s = stuff[i] s

  • Python爬虫+tkinter界面实现历史天气查询的思路详解

    今天给大家分享用Python 爬虫+tkinter界面来实现历史天气查询. 一.实现效果 运行效果 运行效果如下: 二.基本思路 导入用到的库 import requests from lxml import etree import re import tkinter as tk from PIL import Image, ImageTk from xpinyin import Pinyin 1. 爬虫部分 目标url:https://lishi.tianqi.com/ 该网站提供了全国34

  • 利用Python的tkinter模块实现界面化的批量修改文件名

    用Python编写过批量修改文件名的脚本程序,代码很简单,运行也比较快,唯一美中不足之处是每次批量修改文件名时都需要执行以下步骤: 1)复制文件夹路径: 2)打开脚本程序 3)替换脚本中的文件夹路径 4)保存脚本程序 5)执行脚本程序 为了便于操作,最好还是弄成GUI界面,手动选择文件夹,这样程序也更通用.Python中的GUI库很多,绝大部分都支持跨平台,其中安装python时自带的GUI库是tkinter,本文就学习并创建基于tkinte的批量修改文件名程序. 本文涉及的知识点包括以下几个:

随机推荐