⽤PYQT5设计Python运⾏界⾯:选择⽂件夹的⽂件并⾃动获取⽂件地址⽤PYQT5设计Python程序的运⾏界⾯ 如图,设计了⼀个界⾯,⽤于选择需要执⾏的⽂件和数据集,点击运⾏并执⾏,得到结果。
在PYQT中使⽤其包含的⼯具设计⼀个界⾯,简单即可,注意给每个框和按钮命名,⽅便后续操作。 ⼆、界⾯功能实现
此时的界⾯没有任何功能,需要写代码来实现
1. 将ui⽂件转化为py⽂件
茶与诗
2. 对py⽂件中的内容进⾏修改
3. 对窗⼝进⾏功能实现
# -*- coding: utf-8 -*-
"""
Created on Thu Aug 5 20:26:42 2021
@author: stack
"""
import sys
import os
import os
from PyQt5.QtWidgets import*广告学
from PyQt5 import QtWidgets
from APP_GEN import Ui_MainWindow
import APP_GEN
paths=[]
def input_pp_sgy(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_pp_sgy.setText(fileName)
def input_ps_sgy(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_ps_sgy.setText(fileName)
# ps_path=fileName
def input_ps1_txt(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_ps1_txt.setText(fileName)
def input_ps2_txt(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_ps2_txt.setText(fileName)
def input_pp1_txt(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_pp1_txt.setText(fileName)
def input_pp2_txt(self):
fileName,fileType=OpenFileName(None,"选取⽂件",os.getcwd(),"All Files(*);;Text Files(*.txt)") paths.append(fileName)
ui.show_pp2_txt.setText(fileName)
def Output_File(self):
directory=ExistingDirectory(None,"请选择⽂件夹路径","D:/")
paths.append(directory)
ui.show_outputfile.setText(directory)
def DONE(self):
if not os.path.isfile(""):
f=open("", mode="w")
else:
f=open("",mode="w")
str='\n'
f.write(str.join(paths))
f.close
def run_py(self):
ui.lineEdit.setText("RUNNING")
#print(paths)
os.system("python final_Converse_APP.py")
if __name__ =='__main__':
app = QApplication(sys.argv)
MainWindow = QMainWindow()
ui = APP_GEN.Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
MainWindow.show()
ui.input_pp_t(input_pp_sgy)摩托罗拉a768
ui.input_ps_t(input_ps_sgy)
ui.input_ps1_t(input_ps1_txt)
ui.input_ps2_t(input_ps2_txt)
ui.input_pp1_t(input_pp1_txt)
ui.input_pp2_t(input_pp2_txt)
ui.Output_t(Output_File)
ui.t(DONE)
ui.t(run_py)
黄家传菜_())王驹
部分代码解释:
1. 按钮与函数执⾏建⽴连接点击按钮即执⾏对应的函数
ui.input_pp_t(input_pp_sgy)
ui.input_ps_t(input_ps_sgy)
ui.input_ps1_t(input_ps1_txt)
ui.input_ps2_t(input_ps2_txt)
ui.input_pp1_t(input_pp1_txt)
ui.input_pp2_t(input_pp2_txt)
ui.Output_t(Output_File)
如将不尽 与古为新
ui.t(DONE)
ui.t(run_py)
2. 将⽂件路径保存保存⾄⽂件夹
先定义⼀个列表path=[ ],每个函数中有⼀条语句:paths.append(fileName),本程序中的DONE函数即是将path的内容存进⼀个⽂件夹,点击“DONE”按钮,⾃动⽣成⽂件。
def DONE(self):
if not os.path.isfile(""):
f=open("", mode="w")
else:
f=open("",mode="w")
str='\n'
f.write(str.join(paths))
f.close