Python 是否选择pyside获取目录?
在用户从“浏览…”按钮选择目录后,我如何从中获取所选目录?我的目标是使用project字段中的名称在该目录中创建一个文件夹。“选择目录”是我需要帮助解决的最后一部分。谢谢你们Python 是否选择pyside获取目录?,python,directory,pyside,Python,Directory,Pyside,在用户从“浏览…”按钮选择目录后,我如何从中获取所选目录?我的目标是使用project字段中的名称在该目录中创建一个文件夹。“选择目录”是我需要帮助解决的最后一部分。谢谢你们 import sys import os from PySide import QtGui class Example(QtGui.QWidget): def __init__(self): super(Example, self).__init__() self.initUI
import sys
import os
from PySide import QtGui
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
QtGui.QToolTip.setFont(QtGui.QFont('SansSerif', 10))
self.setToolTip('This is a <b>QWidget</b> widget')
# EditText Field
labelProjectName = QtGui.QLabel('Project Name:', self)
labelProjectName.move(15, 10)
self.etProjectName = QtGui.QLineEdit('', self)
self.etProjectName.resize(self.etProjectName.sizeHint())
self.etProjectName.move(90, 7)
# Folder Browser
lbBroswer = QtGui.QLabel('Directory:', self)
lbBroswer.move(15, 40)
self.etBrowser = QtGui.QLineEdit('', self)
self.etBrowser.resize(210,20)
self.etBrowser.move(90, 37)
self.etBrowser.setEnabled(0)
# self.etBrowser.isReadOnly = 0
btnBrowse = QtGui.QPushButton('...', self)
btnBrowse.setToolTip('Select directory for project location.')
btnBrowse.resize(30,20)
btnBrowse.move(305, 37)
btnBrowse.clicked.connect(self.selectDirectory)
# Button UI
btn = QtGui.QPushButton('Create Folder', self)
btn.setToolTip('This creates the folders.')
btn.resize(btn.sizeHint())
btn.move(5, 60)
btn.clicked.connect(self.generateFolders)
self.resize(350, 150)
self.center()
self.setWindowTitle('Folder Utility')
self.show()
def center(self):
qr = self.frameGeometry()
cp = QtGui.QDesktopWidget().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
def selectDirectory(self):
dialog = QtGui.QFileDialog()
dialog.setFileMode(QtGui.QFileDialog.Directory)
dialog.setOption(QtGui.QFileDialog.ShowDirsOnly)
dialog.exec_()
print 'select directory'
def generateFolders(self):
directory = "C:/Users/HP/Desktop/TRASH/Projects"
projectName = self.etProjectName.text()
folderNames = ['spam', 'ham', 'eggs']
for f in folderNames:
filePath = str(directory) + "/" + str(projectName) + "/" + str(f)
if not os.path.exists(filePath):
os.makedirs(filePath)
print 'Successfully Created Folders!'
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
导入系统
导入操作系统
从PySide导入QtGui
类示例(QtGui.QWidget):
定义初始化(自):
super(例如,self)。\uuuuu init\uuuuuuuu()
self.initUI()
def initUI(self):
QtGui.QToolTip.setFont(QtGui.QFont('SansSerif',10))
setToolTip('这是一个QWidget小部件')
#编辑文本字段
labelProjectName=QtGui.QLabel('项目名称:',self)
labelProjectName.move(15,10)
self.etProjectName=QtGui.QLineEdit(“”,self)
self.etProjectName.resize(self.etProjectName.sizeHint())
self.etProjectName.move(90,7)
#文件夹浏览器
lbBroswer=QtGui.QLabel('目录:',self)
lbBroswer.移动(15,40)
self.etBrowser=QtGui.QLineEdit(“”,self)
self.etBrowser.resize(210,20)
self.etBrowser.move(90,37)
self.etBrowser.setEnabled(0)
#self.etBrowser.isReadOnly=0
btnBrowse=QtGui.QPushButton(“…”,self)
btnBrowse.setToolTip('为项目位置选择目录')
btnBrowse.调整大小(30,20)
btnBrowse.移动(305,37)
btnBrowse.clicked.connect(self.selectDirectory)
#按钮用户界面
btn=QtGui.QPushButton('Create Folder',self)
btn.setToolTip('这将创建文件夹')
btn.resize(btn.sizeHint())
btn.移动(5,60)
btn.单击.connect(self.generateFolders)
自我调整大小(350150)
self.center()
self.setWindowTitle('文件夹实用程序')
self.show()
def中心(自我):
qr=self.frameGeometry()
cp=QtGui.QDesktopWidget().availableGeometry().center()
qr.移动中心(cp)
self.move(qr.topLeft())
def selectDirectory(self):
dialog=QtGui.QFileDialog()
setFileMode(QtGui.QFileDialog.Directory)
setOption(QtGui.QFileDialog.ShowDirsOnly)
dialog.exec()
打印“选择目录”
def生成文件夹(自身):
directory=“C:/Users/HP/Desktop/TRASH/Projects”
projectName=self.etProjectName.text()
folderNames=[“垃圾邮件”、“火腿”、“鸡蛋”]
对于folderNames中的f:
filePath=str(目录)+“/”+str(项目名称)+“/”+str(f)
如果不存在os.path(文件路径):
os.makedirs(文件路径)
打印“已成功创建文件夹!”
def main():
app=QtGui.QApplication(sys.argv)
ex=示例()
sys.exit(app.exec_())
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
main()
您应该使用
你应该使用
令人惊叹的。非常感谢,太棒了。非常感谢你。
def selectDirectory(self):
selected_directory = QtGui.QFileDialog.getExistingDirectory()
# Use the selected directory...
print 'selected_directory:', selected_directory