给自己的代码一个界面

该篇文章详细描述了一个使用wxPython编写的教育考试应用,包含语音模型选择、按钮功能(试听、调试、考试)、时间和数据管理等功能,以及定制化的Grid组件和事件处理函数。
摘要由CSDN通过智能技术生成
class SampleGrid(wx.Frame):

    def __init__(self, *args, **kw):
        super(SampleGrid, self).__init__(*args, **kw)

        self.InitUi()

    def InitUi(self):
        self.SetFont(wx.Font(10, wx.SWISS, wx.NORMAL, wx.BOLD))
        self.SetTitle('深圳市中小学考试指令系统')
        # self.SetTitle(title)
        self.SetIcon(wx.Icon('2.ico'))
        self.SetSize(800, 600)
        # self.grid.AutoSize()

        sizer = wx.BoxSizer(wx.HORIZONTAL) # 水平的按钮等

        # 语音模型选择框
        list_v = voice_list()
        statictext = wx.StaticText(self, 0,label='选择语音模型:', size=(110, 30))
        lb2 = wx.ComboBox(self, id=10, choices=list_v, size=(160, 30))  # 下拉列表
        lb2.SetSelection(0)  # 设定默认选项
        self.Bind(wx.EVT_COMBOBOX, self.choice_v)

        # 语音试听等按钮
        btn_v = wx.ToggleButton(self, -1, label="试听语音模型", size=(100, 30))
        testButton = wx.Button(self, -1, label="调试程序", size=(80, 30))
        starButton = wx.Button(self, -1, label="开始考试", size=(80, 30))

        self.file_input = wx.TextCtrl(self, style=wx.TE_READONLY, size=(190, 30))
        self.time_input = wx.TextCtrl(self, style=wx.TE_READONLY, size=(190, 30))
        self.focusColour = "BLUE"
        self.normalColour = "BLACK"

        self.Bind(wx.EVT_TOGGLEBUTTON, self.btn_v_click, btn_v)
        self.Bind(wx.EVT_BUTTON, self.testButton_click, testButton)
        self.Bind(wx.EVT_BUTTON, self.starButton_click, starButton)
        sizer.Add(statictext, 0, wx.BOTTOM) # 0,1控制控件的列宽
        sizer.Add(lb2, 0, wx.SHAPED)
        sizer.Add(btn_v, 0, wx.SHAPED)
        sizer.Add(testButton, 0, wx.SHAPED)
        sizer.Add(starButton, 0, wx.SHAPED)
        sizer.Add(self.file_input, 0, wx.CENTRE | wx.DOWN)
        sizer.Add(self.time_input, 0, wx.CENTRE | wx.DOWN)

        self.timer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.ShowTime, self.timer)
        self.timer.Start(1000)

        table = CustomGridTable()
        grid = CustomGrid(self, id=-1, customGridTable=table)
        self.__grid = grid

        mainSizer = wx.BoxSizer(wx.VERTICAL) # 纵向指令行设置
        mainSizer.Add(sizer)
        mainSizer.Add(grid, 3, wx.EXPAND)
        self.SetSizerAndFit(mainSizer)
        #self.SetRowSize(self, 40)
        grid.AutoSize()
        return grid

        self.Centre()

    def ShowTime(self, event): # 显示时间
        time_now_second = datetime.now().strftime("%Y/%m/%d %H:%M:%S")
        self.time_input.SetLabel(f"{time_now_second}")

    def OnClearClick(self, e):
        table = self.__grid.GetTable()
        table.Clear()
        print(self.__grid.GetTable().data)

    def OnDeleteClick(self, e):
        table = self.__grid.GetTable()
        firstRow = table.data[0]
        table.DeleteRow(firstRow)
        print(self.__grid.GetTable().data)

    def OnAddClick(self, e):
        table = self.__grid.GetTable()
        table.InsertRow(0, ['insert index ', 1, "2.5", "110.6", (50, 200, 30)])
        print(self.__grid.GetTable().data)

    def btn_v_click(self, event):  # 试听语音
        # print("试听语音",voice_ID)
        try:
            audition(v_2)
        except:
            # print("请选择语音模型")
            audition(0)

    def testButton_click(self, event): # 测试程序
        try:
            test(v_2)
        except:
            # print("请选择语音模型")
            test(0)

    def starButton_click(self, event): # 正式考试
        try:
            ins_List = info_ins()
            i = 0
            for ins in ins_List:
                i = i + 1
                diff = differtime(ins[0])
   。。。。。。

这里并没有完整的代码,但各种按钮、文本控制布局都已安排好了,仅供有基础者参考。

考试指令系统下载链接:https://pan.baidu.com/s/11x9fS1gUEPCd6w15KHCxSw?pwd=zvw3 
提取码:zvw3 

极域电子教室座位表程序下载链接:https://pan.baidu.com/s/1dvW5q9G53prkUDVcO6uffA?pwd=w3jp 
照片插入电子表格程序链接:https://pan.baidu.com/s/1dvW5q9G53prkUDVcO6uffA?pwd=w3jp 
提取码:w3jp 

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值