Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【python实操】用python写软件弹窗

【python实操】用python写软件弹窗

作者头像
20岁爱吃必胜客
发布于 2023-03-11 03:13:59
发布于 2023-03-11 03:13:59
2K00
代码可运行
举报
文章被收录于专栏:进步集进步集
运行总次数:0
代码可运行

文章目录

前言

python学习之路任重而道远,要想学完说容易也容易,说难也难。 很多人说python最好学了,但扪心自问,你会用python做什么了? 刚开始在大学学习c语言,写一个飞行棋的小游戏,用dos界面来做,真是出力不讨好。 地图要自己一点一点画出来,就像这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
================
|				|
|				|
|===============

从此讨厌编程,不想继续学下去。每次作业应付。 算法考试,数据结构考试随便背代码,只求通过。 最后呢?我学会变成了吗?只能对一些概念侃侃而谈,但真的会几行代码,能写出实用工具吗? 答案变得模糊。 所以我们要从现在开始,学好python,不要再糊弄下去!!!

组件

label 与 多行文本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# coding=gbk
from tkinter import *

master = Tk()
master.geometry("900x600")
#==========label
show1=Label(master,text="kunkun")
photo = PhotoImage(name="wudi",file="xxzz.gif")
show2=Label(master,image=photo)
show1.pack(side="left")
show2.pack(side="left")
#======多行文本
tshow=Text(master,width=10,height=4)
tshow.pack(side="bottom")

复选框组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#========checkbutton
var =StringVar()
cshow=Checkbutton(master,text="猫猫",variable=var,onvalue="RGB",offvalue="L",fg="blue")
cshow.pack(side="top")

var2 =StringVar()
c2show=Checkbutton(master,text="狗狗",variable=var2,onvalue="RGB",offvalue="L",fg="blue")
cshow.pack(side="top")
c2show.pack(side="top")

Radiobutton单选组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#====radio
v=IntVar()
rshow=Radiobutton(master,text="One",variable=v,value=1)
rshow.pack(anchor=W)

anchor=W-----------放在窗体西面

anchor 美: [ˈæŋkər] 英: [ˈæŋkə®] n. 锚;给以安全感的人(或物);精神支柱;顶梁柱 v. 抛锚;下锚;使固定;扣牢 网络 锚点;安佳;锚定

Frame框架组件

labelframe标签框架

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lfshow=LabelFrame(master,text="Group",padx=5,pady=5)
lfshow.pack(pady=10,padx=10,expand="yes")
e1=Entry(lfshow,width=10)
e1.pack()
e2=Entry(lfshow,width=10)
e2.pack()

entry 美: [ˈentri] 英: ['entri] n. 记录;词条;登录;录入 网络 进入;条目;入口

列表框Listbox

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#=========listbox
lbshow=Listbox(master,bg="yellow",height=5,width=20)
lbshow.pack(side="top")
for item in ["one","two","three","four"]:
    lbshow.insert(END,item)

scrollbar滚动条组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#======scrollbar
sshow=Scrollbar(master)
sshow.pack(side=RIGHT,fill=Y)
lbshow1=Listbox(master,fg="red",height=5,width=20)# 创建需要滚动条的列表框
lbshow1["yscrollcommand"]=sshow.set#把滚动条对象赋值给列表框属性
lbshow1.pack(side="right")# 设置滚动条在右边
for item in range(10):
    lbshow1.insert(END,item)# 循环为列表框插入七个值

sshow.config(command=lbshow1.yview())# 滚动条与列表框绑定联动命令属性

scale刻度条组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#====scale 刻度条组件
scshow=Scale(master,from_=0,to=100)# 长度为100的刻度条
scshow.pack(side="right")

spinbox组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#=====spinbox
sbshow=Spinbox(master,from_=0,to=10)
sbshow.pack(side="left")

Spinbox 网络 旋钮控件;框;纺纱箱 spin 美: [spɪn] 英: [spɪn] v. 旋转;纺纱;吐丝;纺线 n. 头晕;(快速)旋转;常用于英式英语;晕头转向 网络 自旋;旋转球;自转

Toplevel子窗体组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#====toplevel 子窗体
tlshow=Toplevel(master)
tlshow.wm_attributes("-topmost",1)# 子窗体永远在界面最前面
tlshow.title("ok!")
t1show=Text(tlshow,width=10,height=4)
t2show=Text(tlshow,width=10,height=4)
t1show.pack()
t2show.pack()

PanedWindow组件

PanedWindow 网络 窗格视窗

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pw=PanedWindow(orient=VERTICAL,bg="green")
pw.pack(fill=BOTH,expand=1)
for w in [Label,Button,Checkbutton,Radiobutton]:
    pw.add(w(pw,text='可上下移动'))

Menu

下拉菜单

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# coding=gbk
from tkinter import *
master=Tk()
m1=Menu(master)# 菜单实例
master.config(menu=m1)
def callback():#定义菜单鼠标单击事件的 回调函数
    master.title("OK")
filemenu=Menu(m1)# 在m1上 添加子菜单
m1.add_cascade(label="File",menu=filemenu)# 在m1上设置子菜单名并关联子菜单1
filemenu.add_command(label="New",command=callback())
filemenu.add_command(label="Open...",command=callback())
filemenu.add_separator()# 增加分割线
filemenu.add_command(label="Exit",command=callback())
helpmenu=Menu(m1)
m1.add_cascade(label="Help",menu=helpmenu)
helpmenu.add_command(label="About...",command=callback())
mainloop()

弹出菜单

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# coding=gbk
from tkinter import *
import tkinter.messagebox
master=Tk()
class Example(Frame):# 继承frame
    def __init__(self):
        super().__init__()
        self.initUI()# 初始化调用initUI函数

    def initUI(self):
        self.master.title("演示鼠标右键跳出菜单")
        self.menu=Menu(self.master,tearoff=0)# 在窗体上frame创建菜单对象
        self.menu.add_command(label="提示",command=self.showClick)
        self.menu.add_command(label="退出",command=self.onExit)
        self.master.bind("<Button-3>",self.showMenu)# 窗体鼠标右键函数,调用showMenu函数
        self.pack()

    def showMenu(self,e):
        self.menu.post(e.x_root,e.y_root)
    def showClick(self):
        tkinter.messagebox.showinfo("提示","点上了")


    def onExit(self):
        self.quit()

master.geometry("250x150")
app=Example()
master.mainloop()

总结

针对组件

可以利用frame , labelframe 容器组件把相同方向的组件一起定位。 可以容器嵌套容器,让界面整洁 鼓励用相对位置来定位。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
(八)HQL手写题(1)
表结构:uid,subject_id,score 求:找出所有科目成绩都大于某一学科平均成绩的学生 数据集如下 1001 01 90 1001 02 90 1001 03 90 1002 01 85 1002 02 85 1002 03 70 1003 01 70 1003 02 70 1003 03 85 1)建表语句 create table score( uid string, subject_id string, score int) row format delimited fields terminated by '\t'; 2)求出每个学科平均成绩 select uid, score, avg(score) over(partition by subject_id) avg_score from score;t1 3)根据是否大于平均成绩记录flag,大于则记为0否则记为1 select uid, if(score>avg_score,0,1) flag from t1;t2 4)根据学生id进行分组统计flag的和,和为0则是所有学科都大于平均成绩 select uid from t2 group by uid having sum(flag)=0; 5)最终SQL select uid from (select uid, if(score>avg_score,0,1) flag from (select uid, score, avg(score) over(partition by subject_id) avg_score from score)t1)t2 group by uid having sum(flag)=0;
wolf
2020/09/21
6260
Hive SQL 大厂必考常用窗口函数及相关面试题
二、窗口函数的基本用法 1.基本语法 2.设置窗口的方法 1)window_name 2)partition by 子句 3) order by子句 4)rows 指定窗口大小 3.开窗函数中加order by 和 不加 order by的区别
王知无-import_bigdata
2022/11/11
4K0
Hive SQL 大厂必考常用窗口函数及相关面试题
大数据面试SQL042-所有考试科目的成绩都大于对应学科的平均成绩的学生
2)查询出“所有”科目都大于平均成绩的学生,这里的所有比较难处理,有个技巧:对每个学生的每个科目满足“成绩>科目平均成绩”的记录打0,不满足的打1,然后对学生所有科目标签求和,和为0则满足“所有科目都大于平均成绩”,和>0则不满足;
数据仓库晨曦
2024/02/27
3950
大数据面试SQL042-所有考试科目的成绩都大于对应学科的平均成绩的学生
HiveSQL-面试题034 不及格课程数大于2的学生的平均成绩及其排名
有学生每科科目成绩,求不及格课程数大于2的学生的平均成绩及其成绩平均值后所在的排名。
数据仓库晨曦
2024/01/08
2880
HiveSQL-面试题034 不及格课程数大于2的学生的平均成绩及其排名
一些sql用法例子【Updating】
1、利用instr连接表做字段查询,group_concat做值的合并: create table ab(product_id int,product_name varchar(10), product_type_id varchar(10)); insert into ab values(1,'产品A','1,2'),(2,'产品B','2,3'); create table ac(product_type_id int,product_type_name varchar(10)); insert
用户1177713
2018/02/24
1.8K0
SQL 进阶挑战(21 - 25)
现有用户信息表user_info(uid用户ID,nick_name昵称, achievement成就值, level等级, job职业方向, register_time注册时间),示例数据如下:
村雨遥
2022/06/20
4610
MySQL数据库基础练习系列8、成绩录入与分析系统
很多学生或者说是初学者在学习完成数据库的基础增删改查后就自认为在数据库这里就很熟悉了,但是不接触项目根本部知道需求,我这里准备了50个项目的基本需求来让大家来熟练各类项目的列信息,让大家更好的深入项目进行实战式的练习,可以让大家在后面面试的时候有更多更丰富的资历让大家可以与面试官侃侃而谈。
红目香薰
2024/06/07
1620
0基础学习PyFlink——用户自定义函数之UDTAF
在前面几篇文章中,我们分别介绍了UDF、UDTF和UDAF这三种用户自定义函数。本节我们将介绍最后一种函数:UDTAF——用户自定义表值聚合函数。
方亮
2023/10/28
2860
0基础学习PyFlink——用户自定义函数之UDTAF
MySQL50-6-第16-20题
学生信息:Student-------s_id,s_name,s_sex,s_birth
皮大大
2021/03/01
3890
MySQL50-6-第16-20题
互联网经典SQL面试题及答案解析
--学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --课程表 Course(CId,Cname,TId) --CId 课程编号,Cname 课程名称,TId 教师编号 --教师表 Teacher(TId,Tname) --TId 教师编号,Tname 教师姓名 --成绩表 SC(SId,CId,score) --SId 学生编号,CId 课程编号,score 分数
TOMOCAT
2020/06/09
1.5K0
SQL | 44道经典 SQL 笔试题与答案解析
--学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --课程表 Course(CId,Cname,TId) --CId 课程编号,Cname 课程名称,TId 教师编号 --教师表 Teacher(TId,Tname) --TId 教师编号,Tname 教师姓名 --成绩表 SC(SId,CId,score) --SId 学生编号,CId 课程编号,score 分数
咸鱼学Python
2020/04/08
10.7K2
SQL |  44道经典 SQL 笔试题与答案解析
MySQL学习,详解分组查询(二)
where & group by & having & order by & limit ⼀起协作
用户1289394
2021/10/26
1.9K0
【数据库】MySQL经典面试题(练习)
【数据库】MySQL经典面试题(练习) 一、删除除了学号字段以外,其它字段都相同的冗余记录,只保留一条!(也就是要删除凤姐和田七中一条重复数据只留一条) 要求结果数据: 原始数据: CREATE TA
Java帮帮
2018/03/15
1.7K0
【数据库】MySQL经典面试题(练习)
深夜小酌,50道经典SQL题,真香~
  现在是6月9号00:15分,花了近3小时撸完这小50题,有点困了,不想对所谓标准答案了。。心中有猛虎,何必细嗅蔷薇?
陈哈哈
2022/06/12
9660
深夜小酌,50道经典SQL题,真香~
sql语句练习题整理
3)李四语文成绩被登记错误,成绩实际为85分,更新到考试信息表中,SQL语句怎么编写?
全栈程序员站长
2022/07/25
2880
经典SQL练习题(MySQL版)
网上有一篇关于SQL的经典文章,超经典SQL练习题,做完这些你的SQL就过关了,引用和分析它的人很多,于是今天复习SQL的时候找来练了练手。原作者用的是SQL Server 2008,我在这里用的是MySQL 8.0.11(二者语法差别不大),文本编辑器用的是Atom 1.28.2(不知道大家用什么,反正用Atom写SQL确实丝质顺滑)。
全栈程序员站长
2022/09/01
1.2K0
50道SQL面试题
9、查询所有课程成绩都小于60分的学生的学号、姓名(有意思,如果不用max可能难度不小)
九转成圣
2024/04/10
1350
玩转Mysql系列 - 第8篇:分组查询详解(group by & having)
where是在分组(聚合)前对记录进行筛选,而having是在分组结束后的结果里筛选,最后返回整个sql的查询结果。
路人甲Java
2019/09/17
8.9K1
SQL数据分析实战:好用的窗口函数
感觉这个春节假期在除夕过完之后吧,时间就过的非常快了,余额已经明显不足了。嗯,是开始可以学习起来了!
可以叫我才哥
2022/04/12
8180
SQL数据分析实战:好用的窗口函数
MySQL 练习题和答案,以及运行结果截图
一共四道大题,运行结果截图在最后面。 SQL 题目一 数据准备 # 创建数据库 renda01 CREATE DATABASE renda01 CHARACTER SET utf8; # 使用数据库 USE renda01; # 创建商品表: CREATE TABLE product( pid INT, # 主键 ID pname VARCHAR(20), # 商品名称 price DOUBLE, # 商品价格 category_name VARCHAR(32) #
RendaZhang
2020/09/08
1.5K0
MySQL 练习题和答案,以及运行结果截图
相关推荐
(八)HQL手写题(1)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验