数据库修改器示例界面

实现代码:

# coding: utf-8

import wx
import pymssql

class TSQLDate(wx.Frame):

    def __init__(self,parent,id,title):
        wx.Frame.__init__(self,parent,id,title,size=(600,570),style=wx.MINIMIZE_BOX|wx.SYSTEM_MENU|wx.CAPTION|wx.CLOSE_BOX|wx.CLIP_CHILDREN)
        panel=wx.Panel(self,-1)
        panel.SetBackgroundColour('gray')

        wx.StaticText(panel,-1,u'主  机:',(150,20),(60,30),wx.ALIGN_CENTER)
        self.ipText=wx.TextCtrl(panel,-1,'127.0.0.1',(215,16),(160,25),style=wx.TE_LEFT)

        wx.StaticText(panel,-1,u'用户名:',(150,58),(60,58),wx.ALIGN_CENTER)
        self.userName=wx.TextCtrl(panel,-1,'sa',(215,54),(160,25),style=wx.TE_LEFT)

        wx.StaticText(panel,-1,u'密   码:',(150,96),(60,96),wx.ALIGN_CENTER)
        self.pwd=wx.TextCtrl(panel,-1,'',(215,93),(160,25),style=wx.TE_LEFT|wx.TE_PASSWORD)

        wx.Button(panel,201,u'连 接',(400,90),(80,28))


        wx.StaticText(panel,-1,u'帐   套:',(150,133),(60,58),wx.ALIGN_CENTER)
        samp=['test1','test2','test3']
        wx.ComboBox(panel,-1,'',(215,130),(160,25),samp,wx.CB_DROPDOWN)#给合框

        dr=wx.StaticBox(panel,label=u'基本信息',pos=(10,170),size=(560,350))
        dsizer=wx.StaticBoxSizer(dr,wx.VERTICAL)
        wx.StaticText(panel,-1,u'请输入客户编码查询:',(85,200),(120,58),wx.ALIGN_CENTER)
        self.codeText=wx.TextCtrl(panel,-1,'test',(216,196),(160,25),style=wx.TE_LEFT)
        wx.Button(panel,202,u'查 询',(400,194),(85,28))


        wx.StaticText(panel,-1,u'名   称:',(80,240),(60,30),wx.ALIGN_CENTER)
        self.khText=wx.TextCtrl(panel,-1,u'张三',(140,235),(120,25),style=wx.TE_LEFT)

        wx.StaticText(panel,-1,u'属   性:',(290,240),(60,30),wx.ALIGN_CENTER)
        self.sxText=wx.TextCtrl(panel,-1,u'客户',(350,235),(120,25),style=wx.TE_LEFT)


        #期初框
        qc=wx.StaticBox(panel,label=u'期初信息',pos=(100,270),size=(180,210))
        qcsizer=wx.StaticBoxSizer(qc,wx.VERTICAL)
        wx.StaticText(panel,-1,u'应收款:',(105,310),(60,30),wx.ALIGN_CENTER)
        self.ysk_0=wx.TextCtrl(panel,-1,'500',(160,305),(100,25),style=wx.TE_LEFT)
        wx.StaticText(panel,-1,u'预收款:',(105,350),(60,30),wx.ALIGN_CENTER)
        self.yus_0=wx.TextCtrl(panel,-1,'2000',(160,350),(100,25),style=wx.TE_LEFT)
        wx.StaticText(panel,-1,u'应付款:',(105,393),(60,30),wx.ALIGN_CENTER)
        self.yfk_0=wx.TextCtrl(panel,-1,'600',(160,390),(100,25),style=wx.TE_LEFT)
        wx.StaticText(panel,-1,u'预付款:',(105,440),(60,30),wx.ALIGN_CENTER)
        self.yuf_0=wx.TextCtrl(panel,-1,'800',(160,435),(100,25),style=wx.TE_LEFT)


        #其它信息
        qt=wx.StaticBox(panel,label=u'其它信息',pos=(320,270),size=(180,210))
        qtsizer=wx.StaticBoxSizer(qt,wx.VERTICAL)
        wx.StaticText(panel,-1,u'应收款:',(330,310),(60,30),wx.ALIGN_CENTER)
        self.ysk=wx.TextCtrl(panel,-1,'0.00',(390,305),(100,25),style=wx.TE_LEFT)
        self.ysk.SetEditable(False)#设置不可编辑
        wx.StaticText(panel,-1,u'预收款:',(330,350),(60,30),wx.ALIGN_CENTER)
        self.yus=wx.TextCtrl(panel,-1,'0.00',(390,350),(100,25),style=wx.TE_LEFT)
        self.yus.SetEditable(False)
        wx.StaticText(panel,-1,u'应付款:',(330,393),(60,30),wx.ALIGN_CENTER)
        self.yfk=wx.TextCtrl(panel,-1,'0.00',(390,390),(100,25),style=wx.TE_LEFT)
        self.yfk.SetEditable(False)
        wx.StaticText(panel,-1,u'预付款:',(330,440),(60,30),wx.ALIGN_CENTER)
        self.yuf=wx.TextCtrl(panel,-1,'0.00',(390,435),(100,25),style=wx.TE_LEFT)
        self.yuf.SetEditable(False)
        wx.Button(panel,203,u'修 改',(400,485),(80,25))
        self.Centre()

        '''
        keycode=wx.KeyEvent.GetUnicodeKey
        if keycode==wx.WXK_CONTROL_X:
            print 'ctrl+x'
        else:
            print 'error'
        '''

        #按钮监听
        wx.EVT_BUTTON(self,201,self.onLinkSql)
        wx.EVT_BUTTON(self,202,self.onQuery)
        wx.EVT_BUTTON(self,203,self.onUpdate)


    def onLinkSql(self,event):
        host=self.ipText.GetValue()
        user=self.userName.GetValue()
        passw=self.pwd.GetValue()
        conn=pymssql.connect(host=host,port='1433',user=user,password=passw,database='master')
        cur=conn.cursor()
        if cur:
            print 'ok'
            cur.execute('selct name from SysDatabases')

        else:
            print 'error!'

    def onQuery(self,event):

        print 'query ok'

    def onUpdate(self,event):
        print 'update ok'

    def openUp(self,event):
        self.ysk.SetEditable(True)
        self.yus.SetEditable(True)
        self.yfk.SetEditable(True)
        self.yuf.SetEditable(True)


if __name__=='__main__':
    app=wx.App()
    frame=TSQLDate(None,-1,u'T1期初修改器')
    frame.Show()
    app.MainLoop()
View Code

效果:

posted @ 2016-03-26 12:12  kennyhip  阅读(178)  评论(0)    收藏  举报