반응형

기능 구현에만 급급하여 코드만 짜다보니 정리가 되지 않아 정리겸 블로깅~

오늘 구현한 폴더에서 특정 확장자만 리스트에 표시하는 기능.

 

 

Path 버튼을 눌러 폴더선택 다이얼로그를 열고,

폴더를 선택하면 그 폴더 내에서 .rcp 라는 파일만 리스트 위젯에 등록한다.

 

아래 코드는 현재 위치의 \Recipe 내에 있는 파일들의 리스트를 위젯에 등록하는 코드이다.

import os
files = os.listdir('.\Recipe')
for file in files:
	self.listWidgetModel.addItem(file)

실행해 보니 파일 뿐만 아니라 폴더까지도 등록되었다. ^^

 

여기에 추가적인 코드를 더하여 기능을 완성한다.

def pushButtonPath_clicked(self) :
	folder = QFileDialog.getExistingDirectory(self, "Select Directory")
	if folder != '' :
		self.lineEditPath.setText(folder)
		self.listWidgetModel.clear()
		files = os.listdir(folder)
		fileExt = ".rcp"
		for file in files :
			if file.endswith(fileExt) :
				self.listWidgetModel.addItem(file)
	else :
		QMessageBox.about(self, "Error", "Not selected!")

 

폴더를 선택하지 않고 취소를 하면 메세지를 띄운다.

폴더를 선택했으면 에디트 박스에 폴더 경로를 표시하고,

현재 리스트의 내용을 지우고,

'.rcp' 인 파일만 리스트에 추가한다.

 

PyQt5로 다시 시작 (1월 20일) 한지 3주째... 

조금씩 되어가지만 아직 한참 멀었다.

기초를 다지지 않고 막 나가는 코드... ㅡ.ㅡ;

 

 

 

728x90
반응형

+ Recent posts