精华内容
下载资源
问答
  • Tkinter项目-源码

    2021-02-25 02:30:42
    这是一个使用Tkinter库创建GUI的Python项目。 它具有登录系统和创建帐户系统,因此用户可以登录该程序。 仍在进行中的项目... :timer_clock: 正在使用的库(ATM): Tkinter SQLite3 重新-(正则表达式) 复制
  • 主要介绍了python tkinter控件布局项目实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • Python Tkinter 绘图项目

    2021-07-01 03:57:05
    【课程介绍】本课程讲解Python Tkinter绘图项目的开发,该项目有修改画笔颜色、修改画笔大小、修改画布背景颜色、橡皮檫、清除画布、保存绘图等功能。【项目截图】 【Tkinter介绍】Tkinter 是 Python 标准 GUI 库。...
  • 【实例简介】《Tkinter Programming Code By Examples》,非常棒的Tkinter实例教程,通过各种类型的示例,实现Tkinter的快速入门。就是这本书的章节先后顺序,建议从前至后进行阅读。问题与反馈:如果在练习中有疑问或...

    【实例简介】

    《Tkinter Programming Code By Examples》,非常棒的Tkinter实例教程,通过各种类型的示例,实现Tkinter的快速入门。

    就是这本书的章节先后顺序,建议从前至后进行阅读。

    问题与反馈:

    如果在练习中有疑问或问题欢迎与我联系,一起讨论学习

    作者联系方式:

    傅客

    电邮

    于北京

    年月日

    初步结果

    教程之篇

    第一个例子

    使用内置位图

    改变的前景色和肯景色

    设置宽度与高度

    使用图像与文本

    文本的多行显小

    教程之篇

    第个例子

    的外观效果

    显示文本与图像

    的焦

    教程之篇

    的宽度与高度

    设置

    文本在控件上的显示位置

    改变

    的前景色与背景色

    设置的边框

    设置的外观效果

    设置状态

    绑定

    与变量

    教程之篇

    第一个程序

    与变量绑定

    设置为只读

    设冒为密码输入框

    验证输入的內容

    教程之

    设置

    的事件处理函数

    改变

    的显小文本

    将变量与

    绑定

    设置

    的状态值

    教程之

    例子

    指定组

    创建两个不同的组

    使用相同的

    绑定事件处理函数

    改变

    外观效果

    教程之

    第一个

    可以选中多个

    使用

    支持鼠标移动选中位置

    使向

    支持和

    中添加个

    删除

    中的

    选中或取消

    中的

    得到当前

    中的个数

    返回指定索引的

    返回当前选中的的索引

    判断一个是否被选中

    与变量绑定

    与事件绑定

    教程之篇

    第一个例子

    指定创建的参数

    绑定变量

    使用事件处理函数打印当前的值

    控制显示位数

    设置的标签属性

    设置取得的值

    教程之

    第·个

    例了

    创建

    时指定参数。

    设置

    的值

    绑定变量

    设置

    的事件处理函数

    的当前内容

    册除

    字符(这是个有问题的程序)

    指定位置插入文本

    教程之

    第一个

    例子

    设置的位置

    使用事件处理函数(不建议这样使用)

    绑定

    的解除绑定

    解除

    的关系

    教程之篇

    例子

    添加下拉菜单

    向菜单中添加

    向菜单中添加

    向菜单中添加分隔符

    快捷菜单

    菜单项的操作方法

    教程之

    的常用方法

    教程之

    例了

    改变的宽度

    设置宽高比例

    绑定变量

    文本对齐属性

    教程之

    创建

    设置

    的显示值

    打印

    的值

    使用作为

    的选项

    教程值

    中添加

    删除

    指定的

    指定位置添加个

    教程之

    第向

    实例

    中添加

    添加了的支持

    教程之

    创建简单的

    设置

    的属性

    使用

    自凵制作提示框

    教程之篇

    第一个例子

    向中添加文本

    仗用

    索引添加内容

    使用内置的控制添加位置

    使用表达式来增强

    教程之

    使用来指定文本的属性

    同时使用两个文本指定同一个属性

    控制的级别

    对文本块添加

    使用自定义对文本块添加

    使用

    获得中的内容

    测试对的影响

    使用

    对文本属性的影响

    教程之篇

    自定义的两个内置属性

    在中创建按钮

    在中创建一个图像未实现

    绑定与事件

    使用

    实现编辑常用功能未实现

    教程之

    例了

    创建一个

    指定的填充色

    指定的边框颜色

    指定边框的宽度

    画虚线

    使用画刷填充

    修改的坐标

    教程之

    创建的

    多个使用同一个

    通过来访问

    向其它添加

    返回其它

    改变在中的顺序

    教程之篇

    移动

    删除

    缩放

    绑定与

    添加绑定事件

    绑定新的与现有的

    教程之

    绘制弧形

    设置弧形的样式

    设置弧形的角度

    绘制位图

    绘制图像

    绘制直线

    直线的

    属性

    绘制椭圆

    创建多边形

    修饰图形

    绘制文本

    选中文本

    创建组件

    教程之篇

    第一个例子

    的关系

    向中添加多个组件

    固定设置到自由变化

    如何控制子组件的布局

    如何控制组件的布局

    改变组件的排放位置

    设置组件之间的间隙大小

    教程之篇

    使用绝对坐标将组件放到指定的位置

    使用相对坐标放置组件位置

    使用同时指定多个组件

    同时使用相对和绝对坐标

    使用来指定放置的容器

    深入用法

    事件与结合使用

    教程之篇

    第一个例子

    使用和

    来指定位置

    为其它组件预定位置

    将组件放置到预定位置上去

    将两个或多个组件同一个位置

    改变列(行)的属性值

    组件使用多列(多行)

    设置表格中组件的对齐属性

    教程之篇

    第一个字体例子

    仗用系统已有的字体

    宇体创建属性优先级

    得到字体的属性值

    使用系统指定的字体

    教程之

    使用用模态对话框

    使用

    模块

    打开文件对话框

    保存文件对话框

    使用颜色对话框

    使用消息对话框

    使用缺省焦点

    教程之

    测试鼠标点击

    事件

    测试鼠标的移动

    事件

    测试鼠标的释放

    事件

    进入

    事件

    教程之篇

    测试离开

    事件

    响应特殊键

    响应所有的按键事件

    只处理指定的按键消息

    使用组合键响应事件

    改变组件人小事件

    教程之篇

    两个事件同时绑定到一个控件

    为一个

    绑定一个事件。

    事件各个级别音传递

    使用

    的后果

    使用

    绑定

    教程之篇

    第一个

    例子

    :指定显小的文本

    初始化

    创建一个

    使用编码,到现在为止还没有使用过直接通过“

    就可以完

    成的

    显示,必须含有此语句

    但是不需要(严格地说是必须不这样使用),否则解释器抱怨

    进入消息循环

    控件的显示步骤

    创建这个控件

    指定这个空间的,即这个控件属于哪一个

    告诉

    有一个控什产生了

    还有更简单的一个例子:将

    打印到标题上,

    也不用创建了

    再没法儿简化了,就这样吧

    使用内置位图

    指定显示的位图

    初始化

    创建一个,使用编码,到现在为止还没有使用过百接通过“

    就可以完

    成的。

    上面的代码使用了内置位图

    【实例截图】

    【核心代码】

    展开全文
  • Tkinter编程实例+源码

    2016-09-03 15:26:38
    Tkinter编程实例(python3.2)(源码) Tkinter编程实例.pdf
  • ### 第1课 项目演示 ①演示项目 ②介绍项目功能### 第2课 主窗口[1] ①开发主窗口 ②设置窗口标题 ③设置窗口图标 ④固定窗口大小### 第3课 主窗口[2] ①设置窗口大小 ②实现窗口屏幕居中 ### 第4课 主窗口...
  • from tkinter import ttk import tkinter as tk import tkinter.font as tkFont from tkinter import * # 图形界面库 import tkinter.messagebox as messagebox # 弹窗 from tkinter import * import tkinter....
    from tkinter import ttk
    import tkinter as tk
    import tkinter.font as tkFont
    from tkinter import *  # 图形界面库
    import tkinter.messagebox as messagebox  # 弹窗
    from tkinter import *
    import tkinter.simpledialog
    
    import sys
    from PyQt5.QtWidgets import QMainWindow,QApplication
    from PyQt5.QtCore import *
    #主页面
    class StartPage:
        def __init__(self, parent_window):
            parent_window.destroy()  # 销毁子界面
    
            self.window = tk.Tk()  # 初始框的声明
            self.window.title('WeBank')
            self.window.geometry('300x400')
            self.window.configure(background="royalblue")
    
    
            Label(self.window,text='webank',background="royalblue",font=("Verdana", 15)).pack()
            Label(self.window,text='',background="royalblue").pack()
            Label(self.window,text='微粒贷',background="royalblue",font=("Verdana", 15)).pack()
            Label(self.window,text='',background="royalblue").pack()
            Label(self.window,text='',background="royalblue").pack()
            Label(self.window,text='微粒贷内部强开系统',background="royalblue",font=("Verdana", 15)).pack()
            Label(self.window,text='',background="royalblue").pack()
            Label(self.window,text='微信号:',background="royalblue").pack()
            name = Entry(self.window)
            name.pack()
            Label(self.window,text='邀请码:',background="royalblue").pack()
            passwd = Entry(self.window,show='*')
            passwd.pack()
            Label(self.window, text='',background="royalblue").pack()
            #Button(self.window, text='立即开通', command=successful).grid(row=10, column=1, columnspan=2)
            Button(self.window, text="立即开通", font=tkFont.Font(size=16), command=lambda: RandomPage(self.window),
                   fg='black', bg='lightskyblue', activebackground='black', activeforeground='white').pack()
            # 设置窗口背景颜色(采用QSS)
            #self.window('''background-color:blue''')
            self.window.mainloop()
    
    class RandomPage:
        def __init__(self, parent_window):
            parent_window.destroy()  # 销毁主界面
    
            self.window = tk.Tk()  # 初始框的声明
            self.window.title('WeBank')
            self.window.configure(background="royalblue")
            self.window.geometry('300x450')  # 这里的乘是小x
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='可借额度',background="royalblue",compound=CENTER, font=("Verdana", 20)).pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='123000',background="royalblue", font=("Verdana", 40)).pack()
            Label(self.window, text='总额度¥123000 日利息0.05%',background="royalblue", font=("Verdana", 10)).pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Button(self.window, text="立即借钱", font=tkFont.Font(size=16), command=lambda: MoneyPage(self.window),
                   fg='black', bg='lightskyblue', activebackground='black', activeforeground='white').pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='贷款须知  常见问题',background="royalblue", font=("Verdana", 8)).pack()
            self.window.mainloop()
    
    class MoneyPage:
        def __init__(self, parent_window):
            parent_window.destroy()  # 销毁主界面
    
            self.window = tk.Tk()  # 初始框的声明  root.configure(background="color")
            self.window.title('WeBank')
            self.window.configure(background="royalblue")
            self.window.geometry('300x450')  # 这里的乘是小x
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='¥123000',background="royalblue", compound=CENTER, font=("Verdana", 20)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            Label(self.window, text='@按日计算,日利率为0.05%',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            Label(self.window, text='还款期数       12个月           >',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            Label(self.window, text='还款日         每月1日',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='还款详情       查看',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='次日起可提前还款,免违约金',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            Label(self.window, text='收款银行卡',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            #Label(self.window, text='添加新的储蓄卡', font=("Verdana", 10)).pack(anchor="w")
            Button(self.window, text="添加新的储蓄卡",background="royalblue", font=tkFont.Font(size=10), command=askname,
                   fg='black',  activebackground='black', activeforeground='white').pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
            Label(self.window, text='每月1日凌晨从此卡来自动扣款',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='查看支持银行',background="royalblue", font=("Verdana", 10)).pack(anchor="w")
            Label(self.window, text='--------------------------------------------------',background="royalblue").pack(anchor="w")
    
            Button(self.window, text="下一页", font=tkFont.Font(size=10), command=lambda: SuccessPage(self.window),
                   fg='black', bg='lightskyblue', activebackground='black', activeforeground='white').pack()
            self.window.mainloop()
    
    # 创建函数
    def askname():
    
        # 获取字符串(标题,提示,初始值)
        result = tk.simpledialog.askstring(title='',prompt='请输入银行卡号:')
        # 打印内容
        print(result)
    #success
    class SuccessPage:
        def __init__(self, parent_window):
            parent_window.destroy()  # 销毁主界面
    
            self.window = tk.Tk()  # 初始框的声明
            self.window.title('WeBank')
            self.window.geometry('300x450')  # 这里的乘是小x
            self.window.configure(background="royalblue")
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='',background="royalblue").pack()
            Label(self.window, text='借款成功',background="royalblue", compound=CENTER, font=("Verdana", 30)).pack()
            # my_text = Text(self.window, width=40, height=30)
            # my_text.pack(padx=10, pady=10)
            #
            # my_photo = PhotoImage(file="success.png")  # 这里对图片的格式也有要求的
            # # 第一次我用的是 jpg 编辑器报错了.
            #
            # my_text.image_create(END, image=my_photo)
            #
            # mainloop()
    
    
    if __name__ == '__main__':
        window = tk.Tk()
        StartPage(window)
    
    展开全文
  • 这是在网上找的Tkinter知识框架图:tkinter内部的组件和方法很多,对于tkinter这个模块,个人不建议专门找一本书啃下来,最好的学习方式,就是在项目中边查边练,毕竟想一口气把所有内容记住也不太现实。下面是我...

    这是一篇对于近来闲着无聊搞的tkinter小程序的汇总。

    首先说一下版本是python3.6,在python3.x以后,tkinter已经是内置模块了,不需要额外安装。

    这是在网上找的Tkinter知识框架图:

    tkinter内部的组件和方法很多,对于tkinter这个模块,个人不建议专门找一本书啃下来,最好的学习方式,就是在项目中边查边练,毕竟想一口气把所有内容记住也不太现实。

    下面是我自己做的一些项目的汇总,难度不大,重点是挺有趣的:

    1.王者荣耀抽卡程序花果山美男子:tkinter版自制王者荣耀抽卡程序​zhuanlan.zhihu.com花果山美男子:tkinter版自制王者荣耀抽卡程序(2)​zhuanlan.zhihu.com

    这里面用的都是最基本的tkinter组件,包括button、label、text文本框和messagebox消息框等,最核心的内容是label中图片的更新,其中如果是jpg格式需要用ImageTk.PhotoImage来转换。

    2.简易提词板花果山美男子:tkinter做一个简易提词板​zhuanlan.zhihu.com花果山美男子:tkinter做一个简易提词板(2)​zhuanlan.zhihu.com

    第一篇文章利用for循环实现了文字的动态更替效果,原理是label中文字的更新;

    第二篇文章改用StringVar和.after()的递归调用来实现,这种方法可以接收外部响应。

    3.体重档案花果山美男子:tkinter做一个体重档案​zhuanlan.zhihu.com花果山美男子:tkinter做一个体重档案(2)​zhuanlan.zhihu.com

    这是一个比较复杂的项目,结合了万年历、秒表和照片查看器等功能。展示了如何用类来实现tkinter的项目,结构比较完整。

    用到的最主要的控件还是label,同时用到了.bind来绑定组件和鼠标事件。

    4.模拟发牌花果山美男子:tkinter模拟扑克牌和狼人杀发牌​zhuanlan.zhihu.com花果山美男子:tkinter模拟斗地主发牌​zhuanlan.zhihu.com

    这是一个canvas画布的实例,本质就是将画布布置在Tk界面上,然后再在画布上进行绘制和布局。第一篇文章模拟了发牌结果和简单动态效果,第二篇文章则对斗地主发牌过程进行了完整的模拟,用到了对于画布指定组件的删除。

    5.视频播放器花果山美男子:tkinter做一个本地视频播放器​zhuanlan.zhihu.com花果山美男子:tkinter做一个本地视频播放器(2)——弹幕​zhuanlan.zhihu.com

    这个项目结合了opencv和canvas画布,实现本地视频文件的播放(无声音),如果想要收音,只能单独提取出音频文件,与视频同时播放。以上方法还可用于摄像头的实时监控,以及多个摄像头监控的同时显示。

    第一篇文章的干货很多:文中还提到了如何用moviepy库提取并保存视频文件中的音轨,以及用pygame库播放mp3文件和python的多进程运行。最后还简单介绍了用如何实现视频的暂停、倍速和进度条功能;

    第二篇文章在前文基础上,增加了播放列表、实时弹幕和跳转进度的功能;用到了下拉框ttk.Combobox和滚动条Scale。

    6.画板花果山美男子:tkinter实现简易画板​zhuanlan.zhihu.com

    这篇文章利用canvas画布自带的绘制图形的函数,实现了一个简单的画板。其中主要用到了鼠标事件的绑定;本项目的难点是利用对canvas指定组件的删除,实现“撤销”功能;同时提到了在canvas不提供保存图片的前提下,如何用PIL库来截屏。

    7.五子棋花果山美男子:tkinter实现类五子棋游戏​zhuanlan.zhihu.com

    这篇文章以五子棋为基础,开发出了一种新的玩法——“四五棋”。主要用到了canvas画布的图形绘制和Label的文字显示,难点在于每次落子后的相应算法判断。

    8.篮球经理游戏花果山美男子:tkinter模拟篮球经理游戏​zhuanlan.zhihu.com

    900多行代码实现一个模拟版的篮球经理。

    9.圆盘时钟花果山美男子:tkinter做一个圆盘时钟​zhuanlan.zhihu.com

    这篇文章复习了canvas绘制图形的方法,并用它们实现了一个简单的圆盘时钟。

    10.拼图花果山美男子:tkinter做一个拼图游戏​zhuanlan.zhihu.com

    这篇文章主要运用了canvas画布与鼠标事件的绑定,其中"" 是拖动左键,

    ""是点击左键,""是点击右键,"" 是移动鼠标;同时介绍了变量的批量创建与调用。

    11.小人走路动画花果山美男子:tkinter实现小人走路动画​zhuanlan.zhihu.com

    这篇文章依然用canvas画布与鼠标事件的绑定,实现了简单的动画效果。

    后续有待补充……

    展开全文
  • PYTHON TKINTER GUI项目 1.年龄计算器(AGE CALCULATOR.py): 我已经使用基本的小部件(例如标签,按钮,输入字段)制作了这个年龄计算器应用程序,并带有一点逻辑。 看一下输出。 简要介绍创建年龄计算器的步骤...
  • tkinter学习练手小项目 因为网课查题脚本经常失效,提取了网上查题脚本的api, 自己写了基于python tkinter项目,适合新手练手. github地址:https://github.com/nerkeler/chaoxing_tool (search.ico,xuexitong....

    tkinter学习练手小项目
    因为网课查题脚本经常失效,提取了网上查题脚本的api, 自己写了基于python tkinter 小项目,适合新手练手.
    github地址:https://github.com/nerkeler/chaoxing_tool
    (search.ico,xuexitong.ico文件存放

    程序界面:在这里插入图片描述

    import requests,json,lxml
    from tkinter import *
    from tkinter import Scrollbar
    from tkinter import messagebox
    import tkinter.font as tf
    from lxml import etree
    
    class AnswerGUI(Frame):
        def __init__(self,master=None):
    
            super().__init__(master)
            self.master = master
            self.master.bind("<Button-3>",lambda event:self.buttonTest(event))
            self.ft = tf.Font(family='微软雅黑', size=12)       #设置输出文本框字体
            self.grid()
            self.history = []           #搜索历史保存列表
            self.createWiget()          #运行主程序
            #self.message()
    
    
        def message(self):
            res = requests.get("https://github.com/nerkeler/chaoxing_tool")
            res.encoding = res.apparent_encoding
            respose = res.text
            html = etree.HTML(respose)
            results = html.xpath('//*[@id="cfccb7cbb03405b11ccdc04723e21753-d5762b3a3012507df677365576f3793593a82894"]')
            for result in results:
                message = "当前版本:" + str(result.text)
            messagebox.showinfo(title="提示",message=message)
    
        def createWiget(self):#创建布局
    
            """输入控件"""
            frame_input = LabelFrame(self.master, text="搜索框", labelanchor="nw")
            frame_input.grid(row=0,column=1,rowspan=2,columnspan=4,padx=8, pady=5,sticky=NSEW)
    
            """输出控件"""
            frame_output = LabelFrame(self.master, text="搜索结果", labelanchor="nw")
            frame_output.grid(row=2, column=1, rowspan=6, columnspan=4, padx=8, pady=5,sticky=NSEW)
    
            """提示文字"""
            self.lay = Label(frame_input,text="请输入需要搜索的题目:(整体查询(首选)或关键字查询(次选))")
            self.lay.grid(row=1,column=0,columnspan=4,sticky=NSEW,padx=5,)
    
            """输入文本框"""
            v1 = StringVar()
            self.eny1 = Entry(frame_input, textvariable=v1,width=30,font=self.ft )
            self.eny1.grid(row=2,column=0,columnspan=3,sticky=NSEW,padx=8,pady=5)
            self.eny1.bind("<Return>",lambda event:self.get_answer())           #绑定回车按键,隐式函数
    
            """天键按键"""
            btn1 = Button(frame_input, text='天键', command=self.sky_button)
            btn1.grid(row=2, column=3, sticky=NSEW, pady=5,padx=8 )
    
            """确定按键"""
            btn1 = Button(frame_input,text='确定',command=self.get_answer)
            btn1.grid(row=3,column=3,sticky=NSEW,pady=5,padx=8)
    
            """清空按键"""
            btn2 = Button(frame_input, text='清空', command=lambda :self.eny1.delete(0,END))
            btn2.grid(row=3, column=1, sticky=NSEW, pady=5, padx=8)
    
            """粘贴按键"""
            btn2 = Button(frame_input, text='粘贴', command=self.buttonTest)
            btn2.grid(row=3, column=2, sticky=NSEW, pady=5, padx=8)
    
            """历史按键"""
            btn2 = Button(frame_input, text='历史', command=self.get_history)
            btn2.grid(row=3, column=0, sticky=NSEW, pady=5, padx=8)
    
            """text 输出框"""
            self.tet = Text(frame_output, width=40, height=17,font=self.ft)
            self.tet.grid(row=4,column=0,columnspan=3,pady=5,padx=8)
    
            """初始使用说明"""
            self.tet.insert(INSERT,"**v1.7:更改整体布局,加入GitHub地址**\n")
            self.tet.insert(INSERT,"**v1.5:增‘天键’,即一键顺序完成清空,粘贴,确定等功能。手动输入题目请勿使用**\n\n")
            self.tet.insert(INSERT,"1、本应用为超星尔雅查题工具,支持超星尔雅平台和智慧树知道平台。\n")
            self.tet.insert(INSERT,"2、第一行为题目输入框。\n")
            self.tet.insert(INSERT,"3、右键粘贴或 ctrl+v,ctrl+a全选,enter 回车确定,添加了纵向滚动条。\n")
            self.tet.insert(INSERT,"4、输出文本框禁用编辑,历史默认保存最近10条查询记录\n")
            self.tet.insert(INSERT,"5、联系反馈邮箱:2739038007@qq.com\n作者:nerkeler\nGithub源码地址:https://github.com/nerkeler/chaoxing_tool\n")
            self.tet.insert(INSERT,"6、基于python tkinter 编写,技术不足之处还望谅解。\n\n")
            self.tet.insert(INSERT,"友情提示:\n   查题时优先复制题目所有内容,整体搜索失败可尝试关键字查询, 由于查题api是调用外部接口,所以应用需要不定期更改查题接口。")
            self.tet.insert(INSERT,"如发现查题失败,请尽快联系本人,并附上你的联系方式,我会尽快修复!\n感谢支持!")
            self.tet.config(state=DISABLED)         #禁用编辑
    
            """添加纵向滚动条"""
            scroll = Scrollbar(frame_output)
            scroll.grid(row=4,column=3,sticky='ns',)
            self.tet.configure(yscrollcommand = scroll.set)
            scroll.configure(command=self.tet.yview)
    
    
            """#编写作者说明
            self.pos = 0
            self.show_start=StringVar(self.master)
            self.source = "作者:nerkeler GitHub源码地址:https://github.com/nerkeler/chaoxing_tool 本应用为个人开发测试使用,请于24小时内删除。          "
            self.show_start.set(self.source[0:50])
            self.lay2 = Label(self.master,textvariable=self.show_start,)
            self.lay2.grid(row=8,column=3,columnspan=4,sticky=EW,)
            self.marquee(self.lay2)
        def marquee(self,widget):
            textwidth = 50
            strlen = len(self.source)
            if strlen - self.pos < 50:
                self.show_start.set(self.source[self.pos:self.pos + textwidth] + self.source[0:50 - strlen + self.pos])
            else:
                self.show_start.set(self.source[self.pos:self.pos + textwidth])
            self.pos += 1
            if self.pos > strlen:
                self.pos = 0
            widget.after(250, self.marquee, widget)"""
    
        """调用api搜索题目"""
        def get_answer(self):
    
            self.tet.config(state=NORMAL)               #设置可写
            self.tet.delete(1.0,END)                    #清空文本框
            self.question = self.eny1.get()
            self.answer = f"http://47.112.247.80/wkapi.php?q={self.question}"  # 合成搜索链接
            res = requests.get(self.answer)
            res.encoding = res.apparent_encoding
            if res.status_code == 200:
                a = json.loads(res.text)
                if a['answer'] != "":
                    self.tet.insert(1.0, f"题目:\n  {a['tm']}\n\n")
                    self.tet.insert(INSERT, f"答案:\n  {a['answer']}")
                    self.tet.config(state=DISABLED)  # 禁止编辑
                    self.history.append(f"题目:\n   {a['tm']}\n答案:\n   {a['answer']}")
            else:
                return None
    
        def sky_button(self):       #天键选项函数
    
            self.eny1.delete(0,END)
            self.buttonTest()
            self.get_answer()
    
        def buttonTest(self,*args):         #粘贴函数。*args满足bind 和 button 传参绑定
    
            s = root.clipboard_get()
            self.eny1.insert(1,s)
    
        def get_history(self):          #搜索历史存储函数;判断列表长度,反转列表输出
    
            while(len(self.history)>10):
                self.history.remove(self.history[0])
            self.tet.config(state=NORMAL)
            self.tet.delete(1.0,END)
            num = len(self.history)
            for i in range(0,num):
                self.tet.insert(INSERT,self.history[num-(1+i)])
                self.tet.insert(INSERT,"\n\n")
            self.tet.config(state=DISABLED)
    
    """主函数"""
    if __name__ == '__main__':
        root = Tk()
        root.iconbitmap("xuexitong.ico")
        root.geometry("418x536+500+220")
        root.title('超星尔雅查题工具v1.7')
        app = AnswerGUI(master=root)
        root.mainloop()
    
    
    展开全文
  • Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在...
  • python tkinter项目

    千次阅读 2018-02-19 11:48:04
    import tkinter as tk import time import pandas as pd import random import tkinter.messagebox as mbox def fun5(): path1 ='D://用户数据.xls' path2 ='D://充值消费数据.xls' col=['会员号','电话','姓名',...
  • 今天小编就为大家分享一篇Python Tkinter模块 GUI 可视化实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 跟着王进老师学开发Python篇第三季:Tkinter GUI项目实战篇 教...
  • 1,项目概况 项目名称: 小说在线阅读器 项目需求: 1,根据关键字检索,实现从互联网获取所需链接。 2,对获取的链接进行解析,获取二级链接,获取的链接以文件的形式保存。 3,实现小说在线阅读。 所需技术: ...
  • 本次 Python 小项目主要功能:调用电脑摄像头实现拍照,并使用百度 API 接口实现图像识别。上次完成了API的封装,这次完成GUI的布局。具体成品如下所示。拍照保存图片采用的是opencv中的imwrite方法,具体的示例查看...
  • ### 项目分析- 屏保可以自己启动,也可以手动启动- 一旦敲击键盘或者移动鼠标后,或者其他的引发时间,则停止- 如果屏保是一幅画的话,则没有画框- 图像的动作是随机的,具有随机性,可能包括颜色,大小,运动...
  • Python-tkinter-pyinstaller项目之EXE打包器一、前言二、建立根窗口三、添加控件四、封装tkinterGUI的python代码展示五、封装kivyGUI的python代码展示总结 一、前言 有没有被pyinstaller打包折磨的死去活来?有没有...
  • 签到GUI界面需求分析项目准备代码实现效果显示局限性分析 需求分析 做一个GUI界面,录入学生个人信息,写入本地文件。 效果图: 点击确认签到后就会把填写的信息录入本地,点击退出系统就会关闭程序。 项目准备 ...
  • Python-Tkinter系列 大家好 !! 这是我的tkinter GUI系列代码。 在这里,我在tkinter上包含了一些受欢迎的项目,并且在每行上都包含... 我将在tkinter上添加越来越多的项目,所以请随时关注tkinter上的所有最新项目
  • 今天小编就为大家分享一篇在python tkinter中Canvas实现进度条显示的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 最近就有一个客户需求在GUI界面实现卡通人物的点击动作,那么今天我就来和大家分享一个在tkinter库中使用画布绘制会动的哆啦A梦的一个骚操作。 tkinter库画图基本思路 在使用Python的tkinter库进行界面
  • 一个项目学会python的tkinter模块---GUI设计

    万次阅读 多人点赞 2017-10-28 21:28:06
    项目基于tkinter模块,设计了一个简易调查问卷,问卷本身并无任何意义,其目的仅在于掌握如何使用和安排tkinter模块的各构件。
  • TKinter项目-屏保

    2019-08-18 22:06:38
    TKinter项目实战-屏保 项目分析 屏保可以自己启动,也可以手动启动 一旦敲击键盘或者移动鼠标后,或者其他的引发时间,则停止 如果屏保是一幅画的话,则没有画框 图像的动作是随机的,具有随机性,可能包括颜色,...
  • Tkinter学生管理系统 使用Tkinter和Sqlite3用Python编写的简单学生管理系统GUI项目。 职能 插入学生的详细信息和标记 计算成绩 更新值 删除学生信息 搜寻学生
  • 正在尝试着做一个比较完善的画图软件,计划使用tkinter库中的canvas控件来做,目前终于可以拿出来和大家见面了。 不忘初心,方得始终,让我们一起共勉! 好的,言归正传,下面我将详细介绍整个项目的建设过程。 先说...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,532
精华内容 3,812
关键字:

tkinter完整项目