功能介绍:

查询数据库表数据,提取数据并显示

main.py(执行文件)

#coding:gbk
__author__ = 'Hito'
import querySmscode
import wx
class MyFrame( wx.Frame ):
    def __init__( self):
        wx.Frame.__init__(self,None,-1, 'SMSCODE',(-1,-1),wx.Size(350,300))
        code=querySmscode.querySmscode()
        panel = wx.Panel(self,-1)
        smsCodeBox = wx.BoxSizer( wx.HORIZONTAL )
        head=wx.StaticText(panel, 1,"Phone\t\tSmscode",(120,10),(200, -1), wx.ALIGN_CENTER)
        self.content=wx.TextCtrl(panel, 2,code,(120,35),(300, -1), style = wx.TE_MULTILINE|wx.TE_READONLY)
        self.Refresh = wx.Button(panel,3,u"查询")
        wx.EVT_BUTTON(self,3,self.show_Smscode)
        sizer = wx.FlexGridSizer(rows=3,cols=1, hgap=6, vgap=6)
        sizer.AddMany([(head,0,wx.ALIGN_CENTER), (self.content,0,wx.ALIGN_CENTER),(self.Refresh,0,wx.ALIGN_CENTER)])
        smsCodeBox.Add(sizer, proportion=1, flag=wx.ALL|wx.EXPAND, border=15)
        panel.SetSizer(smsCodeBox)
        self.Center()
    def show_Smscode(self,event):
        self.Refresh.SetLabel(u"查询中...")
        code=querySmscode.querySmscode()
        self.content.SetValue(code)
        self.Refresh.SetLabel(u"查询")
if __name__ == "__main__":
    app = wx.App()
    frame = MyFrame()
    frame.Show()
    app.MainLoop()
querySmscode.py
#coding:gbk__author__ = 'yanghaitao'import  pymssqlimport ConfigParser,oscf = ConfigParser.ConfigParser()cf.read('./smscode.ini')HOST=cf.get("DB_CONFIG","host")DATABASE=cf.get("DB_CONFIG","database")USER=cf.get("DB_CONFIG","user")PASSWORD=cf.get("DB_CONFIG","password")def querySmscode(n=20):    result=''    count=0    sql='SELECT  TOP %d * FROM SMScode ORDER BY Id DESC '%n    result_list=getData(sql)    for i in range(n):        if str(result_list[i][3]) != 'None' and count<10 and len(str(result_list[i][3])) == 4:            count=count+1            result=result + str(result_list[i][1])+'\t'+str(result_list[i][3])+'\t'+str(result_list[i][2])[0:19]+'\n'    return  result

def getData(sql):                                                    #执行数据库查询函数    conn=pymssql.connect(host=HOST,user=USER,password=PASSWORD,database=DATABASE,charset="UTF-8")    cou=conn.cursor()    cou.execute(sql)    result = cou.fetchall()    conn.commit()    conn.close()    return result

smscode.ini(数据库配置文件,具体的读写操作,可参考http://www.cnblogs.com/hito/p/4651647.html)

[DB_CONFIG]
host = XXX.XXX.X.X
database = 数据库名
user = 账号
password = 密码
 

wx模块小实例的更多相关文章

  1. --@angularJS--综合小实例1

    <!DOCTYPE HTML><html ng-app="myapp"><head> <title>综合小实例</title& ...

  2. Python(五)编程小实例

    Python(五)编程小实例 抓取网页信息,并生成txt文件内容! Python抓取网页技能--Python抓取网页就是我们常看见的网络爬虫,我们今天所要用到的就是我们Python中自带的模块,用这些 ...

  3. Android单片机与蓝牙模块通信实例代码

    Android单片机与蓝牙模块通信实例代码 参考路径:http://www.jb51.net/article/83349.htm 啦啦毕业了,毕业前要写毕业设计,需要写一个简单的蓝牙APP进行交互,通 ...

  4. python+pcap+dpkt 抓包小实例

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ 网络数据包捕获与分析程序 """ imp ...

  5. Python_爬虫小实例

    爬虫小实例 一.问题描述与分析 Q:查询某一只股票,在百度搜索页面的结果的个数以及搜索结果的变化. 分析: 搜索结果个数如下图: 搜索结果的变化:通过观察可以看到,每个一段时间搜索结果的个数是有所变化 ...

  6. VueX(vue状态管理)简单小实例

    VueX:状态管理 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 核心模块:State. ...

  7. Django 小实例S1 简易学生选课管理系统 12 CSS样式完善

    Django 小实例S1 简易学生选课管理系统 第12节--CSS样式完善 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 课程模块的逻辑代码到这里 ...

  8. Django 小实例S1 简易学生选课管理系统 11 学生课程业务实现

    Django 小实例S1 简易学生选课管理系统 第11节--学生课程业务实现 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 课程模块中,学生需要拥 ...

  9. Django 小实例S1 简易学生选课管理系统 10 老师课程业务实现

    Django 小实例S1 简易学生选课管理系统 第10节--老师课程业务实现 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 课程模块中,老师将要使 ...

随机推荐

  1. vue初探

    vue初探 很多同学一定都听过MVVM.组件.数据绑定之类的专业术语,而vue框架正是这样的一种框架.vue的作用是:通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. 第一部分:vue介 ...

  2. Bootstrap入门(二十)组件14:警告框

    Bootstrap入门(二十)组件14:警告框 警告框组件通过提供一些灵活的预定义消息,为常见的用户动作提供反馈消息,提示.通知或者警示,可以迅速吸引注意力. 1.情景警告框 2.可关闭的警告框 3. ...

  3. SSM框架整合(注解)-Spring+SpringMVC+MyBatis+MySql

    准备工作: 下载整合所需的jar包 点击此处下载 使用MyBatis Generator生成dao接口.映射文件和实体类 如何生成 搭建过程: 先来看一下项目的 目录结构 1.配置dispatcher ...

  4. HDU1173

    采矿 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  5. sublime text 添加到鼠标右键功能

    安装sublime text的同学可能在安装的时候忘了设置sublime text的右键功能.那我们介绍如何添加. 我们要创建一个.reg为后缀的文件sublime_addright.reg.那么…… ...

  6. [html5] 学习笔记-应用缓存与Web workers

    1.应用缓存 HTML5引入了应用缓存程序,这意味着Web应用可进行缓存,并可在没有因特网连接时访问. 应用缓存的优势: 1)离线浏览--用户可在应用离线时使用它们 2)速度--已缓存是从本地加载,加 ...

  7. js阻止表单提交的两种方法

    下面直接看代码. <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  8. Sublime Text3自定义主题

    设置背景色和关键字颜色(Color Scheme 生成器): Color Scheme 生成器地址:http://tmtheme-editor.herokuapp.com/ 首先:点击General- ...

  9. 记一次阿里云Linux服务器安装.net core sdk的问题以及解决方法

    因为公司领导要求新的项目能跨平台部署,也就是说能部署到Linux服务器上,故新的项目采用了Asp.net mvc core 1.1 进行开发.开发过程一切都比较顺利,然后在之前申请试用的一台微软Azu ...

  10. Linux的CentOS7系统下配置LNMP

    友情提示:在执行以下操作之前,请确保您已经安装了centos7,因为以下所有操作均是在centos7下操作完成的. 1.首先要停掉本机自带的防火墙,再配置iptables,开放21/22/80/808 ...