2015-12-08 64 views
1

代碼第一次按預期運行,但如果我再次運行它,它會使自動化臺崩潰。如果我在Python中運行它,沒有錯誤,我可以反覆運行它。第二次運行Python Tkinter崩潰自動化臺

AD」。 AutomationDesk變量不能在automationdesk之外工作。爲了測試,我評論這部分,只是使用DEBUG而不是AD .DEBUG。

自動化臺是由dSpace提供的一個軟件。

from Tkinter import * 
import Tkinter,tkFileDialog,tkMessageBox 
from datetime import datetime 


#print time 
now = datetime.now() 
print "Test Start time is: "+'%s:%s:%s' % (now.hour, now.minute,now.second) 

#hide the main window 
root = Tk() 
root.withdraw() 

#Debugger option 
debugYN = tkMessageBox.askyesno("Debug", "Would you like to debug?") 

if debugYN == True: 
    _AD_.DEBUG = 1 
    print "Debugging enabled" 
else: 
    _AD_.DEBUG = 0 

#File name selection 
file = tkFileDialog.askopenfilename() 

if file != None and debugYN == True: 
    print file 

_AD_.DFCxlsPath = file 


if _AD_.DEBUG == 1: 
    now = datetime.now() 
    print "Select XLS & Debug Completed at "+'%s:%s:%s' % (now.hour, now.minute,now.second) 

root = None 
#root.destroy() 

del file 
del debugYN 
#remove now here because no matter what we print the start time 
del now 
+1

這是你的整個代碼?我得到了'NameError:name'_AD_'未定義'。 – Kevin

+0

什麼是「動畫桌」?這是一個程序嗎? –

+0

Automation Desk是由dSpace創建的軟件。 –

回答

1

在AutomationDesk中嘗試使用Tkinter時遇到了同樣的問題,所以我聯繫了他們以獲得支持。以下是他們的官方迴應:

「我們不推薦在AutomationDesk Exec塊中使用Tkinter,而是推薦使用內部的'Dialogs'庫,您可以從AutomationDesk中的庫瀏覽器訪問該庫,而且Tkinter不是線程化的, 。安全

請看看到您的PC上的下列文件: C:\ Program Files文件(x86)的\ Common Files文件\ dSPACE的\幫助臺2014年A \打印\ AutomationDeskGuide.pdf>故障排除>使用Tkinter的

原因是Tkinter和Python 2.7之間的交互中存在線程問題。在Internet上還有其他關於此問題的報告,例如:http://bugs.python.org/issue11077

不幸的是,Dialogs庫功能不是很強大,我很難找到它的好文檔。

+0

謝謝!很高興聽到它不只是我。 –

相關問題