السبت، 26 مايو 2012

الGUI و النوافذ تتوقف عن العمل في سكريبت python بايثون مستخدما باي كي تي PyQt

هذا بسبب ان برنامج لك ليس لديه الوقت ليعالج الGUI
لذلك تحتاج الى
خاصية time.sleep
خاصية QtGui.Application.processEvents
مثال :
في هذا السكريبت سوف يتوقف الGUI و تتوقف النافذة عن الإستجابة لأن فيه الكثير من اللووبس
import itertools ,string
x=1
file=open("file","w")
while x<=200:
 it=itertools.product(string.printable,repeat=x)
for i in it:
ij="".join(i)
 file.write("ij"+"\n")
x=x+1
file.close()
الان سنضيف الخاصيتان
import itertools ,string,time,QtGui
 gui=QtGui.Application.processEvents
x=1
file=open("file","w")
gui()
while x<=200:
 it=itertools.product(string.printable,repeat=x)
time.sleep(0.1)
gui()
for i in it:
ij="".join(i)
 time.sleep(0.001)
gui()
 file.write("ij"+"\n")
gui()
x=x+1
gui()
file.close()
gui()
حيث ان الخاصية
time.sleep
حيث تأخد متغير واحد هو من نوع int رقم يحدد عدد الثواني الذي سيتوقف فيها البرنامج عن العمل توقفا مؤقتا
تمت خاصية 
QtGui.Application.processEvents
تقوم بمعالجة الGui و معالجة النوافذ 

ليست هناك تعليقات:

إرسال تعليق

لديك شيء لتقوله؟

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.