功能介绍:

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

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. java调用oracle存储过程,返回结果集

    package com.srie.db.pro; import java.sql.CallableStatement; import java.sql.Connection; import java. ...

  2. 前端自动化构建工具-yoman浅谈

    如今随着前端技术的飞速发展,前端项目也变得越来越复杂. 快速的搭建一个集成多种工具和框架的复杂前端项目也越来越成为一种需求. 当然如果你要自己从0开始完全自己diy,绝对可以,只不过需要耗费一些不少的 ...

  3. ubuntu更换内核版本

    一 详细的使用方法见: http://www.xlgps.com/article/310954.html 二 补充: 1 需要删除旧的内核的方法: sudo apt-get remove linux- ...

  4. Linux 菜鸟学习笔记--系统分区

    硬盘分区 常识 主分区:最多只能有4个 扩展分区:用于突破主分区最多4个的限制 *最多只能有1个 *主分区+扩展分区最多有4个 *不能写入数据,只能包含逻辑分区 逻辑分区 格式化:实际是写入文件系统, ...

  5. C++ 头文件系列(iosfwd)

    简介 输入输出历来都是语言的重要部分,在C++中,该库也是占据了相当大的一部分. C++的输入输出库是其遵循面向对象设计的结果,并结合了泛型编程. 以下是这些库类的关系图(箭头标示继承,白框表示摸板, ...

  6. 使用LVS实现负载均衡原理及安装配置详解

    负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale.这里主要是学 ...

  7. ios 学习动画的套路 (一)

    你也肯定喜欢炫酷的动画! 在APP中,动画就是一个点睛之笔!可以给用户增加一些独特的体验感,估计也有许多的和我一样的,看着那些觉得不错的动画,也就只能流口水的孩子,毕竟~不知道从哪里下手去写!会连续的 ...

  8. PHP 用session与gd库实现简单验证码生成与验证的类

    验证码是为了防止机器灌水给网站带来污染以及增加服务器负担而出现的.目前大大小小的网站都有验证码.今天自己实现了一个简单的验证码类.说简单是因为没有加一些干扰的弧线等等,只是将文字旋转了一下.当然,因为 ...

  9. PhotoshopCC 如何使用动作文件ATN

    非常感谢公司的前端同事,今早给我推荐了一个很好用的插件 atn ,下面简单的总结下 导入 atn 插件的方法: 打开 photoshop 或者 photoshopCC 软件→点击 窗口菜单→找到 动作 ...

  10. Altium Designer(DXP)小技巧之模块化布局

    原创博客转载需注明地址 在我们用Altium Designer进行电路板的绘制的时候经常会遇到模块化布局的问题 就比如电源模块(电源芯片及其外围芯片)放在一起 传感器模块(传感器芯片及其外围芯片)放在 ...