QtiPlot和Python:未定义全局名称“QLocale”

时间:2012-10-03 00:20:28

标签: python qt pyqt pyqt4 mencoder

我正在开发一个Python脚本,它将在名为QtiPlot的应用程序中运行。我搜索了Qtiplot的Python API文档,它使用了PyQt 4.我将脚本编码为:

#! /usr/bin/env python

# A python script to be used in QtiPlot to convert .dat files into .jpg graphs and these ones into .avi movie

import os
import re
import glob
from PyQt4 import uic
from PyQt4 import *

def chooseInputFolder():
    input_folder = QtGui.QFileDialog.getExistingDirectory(qti.app, "Choose Working Folder")
    ui.inputFolderLine.setText(input_folder)
    return input_folder

def chooseOutputFile():
    output_file = QtGui.QFileDialog.getSaveFileName(qti.app, "Choose Output File")
    ui.outputFileLine.setText(output_file)
    return output_file

def createVideoFromJPG():
    input_folder_name = ui.inputFolderLine.text()
    output_file_name = ui.outputFileLine.text()
    dirList = os.listdir(input_folder_name)
    for fname in dirList:
        t = newTable()
        t.importASCII(input_folder_name+fname,sep="\t",ignoreLines=0,renameCols=False,stripSpaces=True,simplifySpace=False,importComments=False,comment="#",readOnly=False,importAs=Table.Overwrite,locale=QLocale(),endLine=0,maxRows=-1)
#       g = plot(t, 2, 0)
#       cmd = 'mencoder "mf://*.jpg" -mf fps=25 -o %s -ovc lavc -lavcopts vcodec=mpeg4' % output_file
#       os.system(cmd)

ui = uic.loadUi("/home/kurumin/Scripts/python/dat2vid.ui")
ui.connect(ui.inputFolderButton, QtCore.SIGNAL("clicked()"),chooseInputFolder)
ui.connect(ui.outputFileButton, QtCore.SIGNAL("clicked()"),chooseOutputFile)
ui.connect(ui.createVideo, QtCore.SIGNAL("clicked()"),createVideoFromJPG)
ui.show()

这是输出:

Traceback (most recent call last):

File "<>", line 27, in createVideoFromJPG

NameError
: 
global name 'QLocale' is not defined

我试图定义QLocale,但我在文档中找不到任何真正有用的东西。

1 个答案:

答案 0 :(得分:1)

替换文件第27行locale=QLocale()的{​​{1}},因为locale=QtGui.QLocale()您必须提供模块名称。