请教如何能在图形界面中显示 id pw message 的值呢?代码如下 谢啦
#!/usr/bin/env python# coding=utf-8
__author__ = 'yang'
__metaclass__ = type
import os #导入 python os 函数模块
import time #导入 python time 函数模块
import sys
import snapshot #导入 core 文件夹中 snapshot.py
import reaper #导入 core 文件夹 reaper.py
from PyQt4 import QtGui,QtCore
from utils import confer # 从 utils.py 中 导入 confer 函数
from message_queue import message_queue #从 message_queue 中 导入 message_queue
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
_fromUtf8 = lambda s: s
class Worker:
def __init__(self,conf_path):# 定义 __init__函数
self.conf = confer(file(conf_path).read())
def prepare(self):
conf = self.conf
secret_path = conf['SECRET_FILE_PATH']
my_reaper = None
if secret_path.endswith('.db01'):
my_reaper = reaper.DbReaper01()
elif secret_path.endswith('.txt'):
my_reaper = reaper.LineReaper()
if conf['STATE_FILE_PATH'] != '' and os.path.exists(conf['STATE_FILE_PATH']):
my_reaper = snapshot.rollback(conf['STATE_FILE_PATH'])
else:
my_reaper.get_secrets(conf['SECRET_FILE_PATH'])
my_reaper.arm(conf['REAP_TYPE'],**conf['REAP_KWARGS'])
for linedic_path in conf['DICS']['LineDic']:
my_reaper.add_dic(dic_type = 'LineDic',dic_path=linedic_path)
for custom_dic in conf['DICS']['CustomDic']:
my_reaper.add_costom_dic(custom_dic)
for pydic_path in conf['DICS']['PyDic']:
my_reaper.add_dic(dic_type = 'PyDic',dic_path=pydic_path)
camera_interval = conf['CAMERA_INTERVAL']
my_camera = snapshot.Camera(my_reaper,'reapme',interval=camera_interval)
self.reaper = my_reaper
self.camera = my_camera
def run(self):
self.camera.paused = False
self.camera.start()
self.reaper.start()
watcher_interval = self.conf['WATCHER_INTERVAL']
print self.reaper.get_dics_length()
while True:
time.sleep(watcher_interval)
if isinstance(self.reaper,reaper.DbReaper01):
id = self.reaper.curr_id
pw = self.reaper.pw_index
return id
return pw
for message in message_queue:
return message
if not self.reaper.isAlive():
print 'all finish'
self.camera.paused = True
break
#else:
# self.reaper.show_progress()
class GridLayout(QtGui.QWidget,Worker):
def __init__(self,parent = None):
QtGui.QWidget.__init__(self)
self.setWindowTitle('Result!')
id1 =QtGui.QLabel('ID')
pw1=QtGui.QLabel('Password')
ssha1=QtGui.QLabel('SSHA')
self.id1 =QtGui.QLineEdit('5')
self.pw1=QtGui.QLineEdit()
self.ssha1 =QtGui.QLineEdit()
quit=QtGui.QPushButton('close',self)
quit.setGeometry(500,380,60,35)
self.connect(quit,QtCore.SIGNAL('clicked()'),QtGui.qApp,QtCore.SLOT('quit()'))
grid=QtGui.QGridLayout()
grid.setSpacing(10)
grid.addWidget(id1,1,0)
grid.addWidget(self.id1,1,1)
self.id1.setText('5')
grid.addWidget(pw1,2,0)
grid.addWidget(self.pw1,2,1)
self.pw1.setText('5')
grid.addWidget(ssha1,3,0)
grid.addWidget(self.ssha1,3,1)
self.setLayout(grid)
self.resize(600,445)
def base_run(self):
self.run()
id=self.run
self.ssha1.setText(message)
app=QtGui.QApplication(sys.argv)
qb=GridLayout()
qb.show()
sys.exit(app.exec_())