培训之后的项目小作业 ----摇奖系统

这个双休日通过老师在培训班上所教的对Tk的一些应用而编写的一个摇奖系统。

摇奖数据库文件如下:

                     张铁林:18725537332
                     饭锅里:18722223333
                     郭西纲:12345678900
                     刘德华:23145367890
                     丁宁:12345678912
                     流畅:23456778891

程序思路如下:

                                 1.将储存在文件当中的内容读出来,对其电话做下处理

                                  (1).例如:12345678912 >>>123xxxx8912

                                 2.将处理的结果储存在一个列表当中。

                                 3.随机抽取列表当中的一个元素作为中奖对象。

                                 4.利用TK图形显示我们需要相应的组件来放我们先前处理的数据。

                                 5.这样我们就需要两个按钮(start,stop),和一个显示框。

                                 6.当我们按下start按钮时,连接了我们抽取随机中奖观众的函数

                                    按下stop按钮时,连接停止函数得到中奖观众。

代码如下:

#!/usr/bin/env python
#coding=utf-8

from Tkinter import *
import time
import random

class App:
	def __init__(self,master):
		frame = Frame(master)
		frame.pack()
		v = StringVar()
		self.e = Entry(frame,textvariable=v,bd='5')
		v.set('')
		self.v = v
		self.e.pack(padx=5)#创建显示框
	
		self.button1 = Button(frame,text = 'start',fg='red',command=self.start_hi)
		self.button1.pack(side=LEFT)#创建start按钮

		self.button2 = Button(frame,text='stop',fg = 'blue',command=self.say_stop)
		self.button2.pack(side=LEFT)#创建stop按钮
	        self.root=master
		self.stop = 0
		#scrollbar = Scrollbar(frame, orient=VERTICAL)
		#self.b1 = Listbox(frame, yscrollcommand=scrollbar.set)
		#scrollbar.pack(side=RIGHT, fill=Y)
		#self.b1.pack(side=LEFT, fill=BOTH, expand=1)
		

	def list_star(self):
		star = []
		file = open('yaojiang.txt','r+')
		data = file.readlines()#读取文件当中的内容
		file.close()

		for n in data:
			l1 = n.split(':')
			a = l1[0] + ':'+ l1[1][:4] + 'xxxx' + l1[1][8:12]#用xxxx代替中间4位号码
			a = a.strip()
			star.append(a)#创建列表
		return star

	def start_hi(self):
		self.stop = 0 
		#star = []
		#file = open('yaojiang.txt','r+')
        	#data = file.readlines()
        	#file.close()

        	#for n in data:
                	#l1 = n.split(':')
                	#a = l1[0] + ':'+ l1[1][:4] + 'xxxx' + l1[1][8:12]
			#a = a.strip()
                	#star.append(a)
		star = self.list_star()#star列表
		self.update_clock(star)#调用update_clock函数
	def say_stop(self):
		self.stop = 1
		#b = self.start()
	def update_clock(self,star):
		b = random.choice(star)#抽取随机数
		self.v.set(b)#显示b
		if self.stop == 1:#判断停止按钮
			return
       		self.root.after(50, self.update_clock,star)#每50毫秒循环显示一次


root = Tk()

app = App(root)

root.mainloop()





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【基本介绍】   文天通用摇号抽奖系统包括摇号与摇奖两个界面。用户可根据需要使用其中之一,也可同时使用。如由主持人或开奖嘉宾在摇号界面摇出中奖人或单位后,再由中奖人或单位在摇奖界面摇奖。这些人员或单位名单及奖品名称必须事先 录入数据库,也可从Excel文件导入到数据库。 本系统初始数据库中已录入了用于演示的人员与单位名单及部分奖品名称,用户可在参数设置界面进行数据库维护(修改记录、增加记录、删除记录、导入记录)。   在参数设置界面,用户可设置摇号与摇奖界面的活动主题、会标(Logo)、主题与界面文字的字体与字号、摇号与摇奖界面的背景图象、背景音乐、音乐开关及是否允许重复摇号与摇奖。   在摇号与摇奖界面,在键盘上按任意键开始摇号(或开始摇奖),再次按任意键停止摇号(或停止摇奖),如此反复。  或者,鼠标左键点击计算机图象开始摇号(或开始摇奖),再次点击此处停止摇号(或停止 摇奖),如此反复。鼠标右键点击计算机图象进行设置参数。   鼠标左键点击底部的“向右键”图象(或“向左键”图象),可在摇奖摇奖界面之间切换。   建议屏幕分辩率设为1024×768。   详细使用说明将在一周后,正式版发布后与软件下载地址一并完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值