python3 优惠券查询GUI程序
from tkinter import ttk
from tkinter import messagebox
import pymssql
import tkinter
import decimal
import time
#定义数据库连接函数
def da(str):
conn = pymssql.connect(host=' 数据库地址',database='数据库名称',user='用户账号',password='用户密码')
cur = conn.cursor()
cur.execute(str)
row = cur.fetchall()
return row
#定义treeview控件子节点数据清空
def dletebutton(tree):
x = tree.get_children()
for item in x:
tree.delete(item)
#定义查询函数
def det():
phone = ent.get()#获取文本框内容传给变量phone 保存
vip = ent1.get()#获取文本框内容传给变量vip保存
tim = (time.strftime('%Y-%m-%d', time.localtime()))#获取当前系统时间以%Y-%m-%d 格式输出
if phone == ''and vip == '':
tkinter.messagebox.showerror('警告:', '手机号码、会员号不能为空')
elif phone == '':
dletebutton(tree)
ent1.delete(0,'end')
sql1 = '''select khm013.khhykh,khm013.xjqbh,xjqms,xjqmz,xfmeje,syqsrq,syjzrq
from khm013 inner join khm17 on khm013.xjqbh=khm17.xjqbh
inner join khm01 on khm013.khhykh=khm01.khhykh
where khxfzt=\'n\' and syjzrq>=\'%s\' and khm013.khhykh=\'%s\'''' % (tim, vip)
a = da(sql1)
for i in a:
tree.insert('', 'end', values=i)
elif vip == '':
dletebutton(tree)
ent.delete(0,'end')
sql2 = '''select khm013.khhykh,khm013.xjqbh,xjqms,xjqmz,xfmeje,syqsrq,syjzrq from
khm013 inner join khm17 on khm013.xjqbh=khm17.xjqbh
inner join khm01 on khm013.khhykh=khm01.khhykh
where khxfzt=\'n\' and syjzrq>=\'%s\' and khm01.khhysj=\'%s\'''' % (tim, phone)
b = da(sql2)
for i in b:
tree.insert('', 'end', values=i)
else:
tkinter.messagebox.showerror('警告:', '手机号码、会员号只能选其一查询')
root = tkinter.Tk()
root.title('优惠券查询')
lab = ttk.Label(root,text='优惠券查询',font=('黑体',20))
lab.grid(row=0,columnspan=5)
lab1 = ttk.Label(root,text='手机号码:')
lab1.grid(row=1,column=0)
ent = ttk.Entry(root,text='手机号码')
ent.grid(row=1,column=1)
lab2 = ttk.Label(root,text='会员号码:')
lab2.grid(row=1,column=2)
ent1 = ttk.Entry(root,text='会员号码')
ent1.grid(row=1,column=3)
but = ttk.Button(root,text='确定',command=det)
but.grid(row=1,column=4)
#使用tkinter编写界面
tree = ttk.Treeview(root,columns=['会员号码','优惠券ID','优惠券描述','优惠券面值','满多少可使用','起始日期','截止日期'],show = 'headings')
tree['columns']=('会员号','优惠券ID','优惠券描述','优惠券面值','满多少可使用','起始日期','截止日期')
tree['height']=15
tree.column('会员号',width=100,anchor='center')
tree.column('优惠券ID',width=100,anchor='center')
tree.column('优惠券描述',width=100,anchor='center')
tree.column('优惠券面值',width=100,anchor='center')
tree.column('满多少可使用',width=100,anchor='center')
tree.column('起始日期',width=100,anchor='center')
tree.column('截止日期',width=100,anchor='center')
tree.heading('会员号',text='会员号')
tree.heading('优惠券ID',text='优惠券ID')
tree.heading('优惠券描述',text='优惠券描述')
tree.heading('优惠券面值',text='优惠券面值')
tree.heading('满多少可使用',text='满多少可使用')
tree.heading('起始日期',text='起始日期')
tree.heading('截止日期',text='截止日期')
tree.grid(row=2,columnspan=5)
root.mainloop()
--------最后界面浏览----------

python3 优惠券查询GUI程序的更多相关文章
- 用 PHP-GTK2 做 Win32 GUI 程序
PHP通常是做为服务器端脚本执行,如果告诉你PHP可以编写普通的GUI程序,你应该很感兴趣.下面介绍的PHP-GTK就是PHP的GUI扩展.GTK是一个业界标准的图形库,具有良好的移植性.如果你用过l ...
- 在OSX和Windows版本Docker上运行GUI程序
看到很多人在Docker问题区讨论:如何在OS X和Windows的Docker上运行GUI程序, 随手记录几个参考资料: https://github.com/docker/docker/issue ...
- Python In Action:二、 最小的GUI程序:麻雀虽小,五脏俱全
Python in Action第二个例子,倒是很简单,却是最基本的GUI程序框架,里面有最基本的实现GUI流程 import wx class MyApp(wx.App): def OnInit(s ...
- 客户端GUI程序开发漫谈
这篇文章包含了这个领域的很多开源项目的介绍,还有我多年来的心血和汗水 去年夏天的时候,我用QT做了一个小工具 后来还用QT做了流程设计器 我把程序分享给飞扬青云之后,他甚至搞出来一套QT的皮肤来 说 ...
- 教程和工具--用wxPython编写GUI程序的
wxPython是个很好的GUI库,对底层的C++库进行了封装,调用起来很方便,尤其是操作前台UI界面和后台多线程,两者配合很方便,做GUI程序最难是写界面尤其是布局. 关于wxPython,自己正在 ...
- Windows下用python编写简单GUI程序的方法
Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下: python_gui.py #!C:\Python27\python.exe ...
- J2msi 自己制作的把exe打成安装包简易GUI程序(第二版 带DLL注册)
J2msi 自己制作的把exe打成安装包简易GUI程序(第二版 带DLL注册) 之前那一版本(http://www.cnblogs.com/rojas/p/4794684.html)没考虑 DLL 注 ...
- 使用PyQt来编写第一个Python GUI程序
原文:使用PyQt来编写第一个Python GUI程序 本文由 伯乐在线 - Lane 翻译,Daetalus 校稿.未经许可,禁止转载!英文出处:pythonforengineers.com.欢迎加 ...
- 数独GUI程序项目实现
数独GUI程序项目实现 导语:最近玩上了数独这个游戏,但是找到的几个PC端数独游戏都有点老了...我就想自己做一个数独小游戏,也是一个不错的选择. 前期我在网上简单地查看了一些数独游戏的界面,代码.好 ...
随机推荐
- 字符串匹配算法:Sunday算法
背景 我们第一次接触字符串匹配,想到的肯定是直接用2个循环来遍历,这样代码虽然简单,但时间复杂度却是\(Ω(m*n)\),也就是达到了字符串匹配效率的下限.于是后来人经过研究,构造出了著名的KMP算法 ...
- 设计模式系列之适配器模式(Adapter Pattern)——不兼容结构的协调
模式概述 模式定义 模式结构图 模式伪代码 类适配器,双向适配器,缺省适配器 类适配器 双向适配器 缺省适配器 模式应用 模式在JDK中的应用 模式在开源项目中的应用 模式总结 主要优点 主要缺点 适 ...
- 浅谈产品模型(Profile)在程序设计中的作用
引言:物联网平台的一个重要功能就是资产管理,产品或者设备都可以看成是资产中组成部分,所以有时候说物联网平台可以进行产品管理和设备管理.通常应用物联网平台开发一套具有产品或者设备管理功能的系统的时候,必 ...
- hadoop与spark的处理技巧(一)Top N处理技巧
1.MR的topN处理方案,假设所有输入Key都唯一 2.MR的topN处理方案,假设输入Key不唯一 3.spark的topN处理方案,假设所有输入Key都唯一,不使用top()和takeOrder ...
- pssh远程执行命令的利器
pssh -h hosts.txt -l irb2 -o /tmp/foo uptime -l 后面加用户,很好理解,执行uptime,然后把结果写入/tmp/foo目录. pscp -h hosts ...
- nginx配置之错误和访问日志功能
错误日志功能:logs/error.log nginx.conf中: #error_log logs/error.log; #error_log logs/error.log notice; #err ...
- Python一切皆是对象,但这和内存管理有什么关系?
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python的第15篇文章,我们来聊聊Python中内存管理机制,以及循环引用的问题. Python的内存管理机制 对于工程师而言,内 ...
- Deno会在短期内取代Node吗?
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 原文出处:https://blog.bitsrc.io/what-is-deno-and-will-it-r ...
- Spring Bean 定义
Bean 定义 被称作 bean 的对象是构成应用程序的支柱.也是由 Spring IoC 容器管理的. bean 是一个被实例化,组装,并通过 Spring IoC 容器所管理的对象. 这些 bea ...
- Java-LinkedList围圈的人名
import java.util.*; public class Example12_7 { public static void main(String[] args) { int m=5; Lin ...