반응형
기능 구현에만 급급하여 코드만 짜다보니 정리가 되지 않아 정리겸 블로깅~
오늘 구현한 폴더에서 특정 확장자만 리스트에 표시하는 기능.
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
반응형
'공부 > Python' 카테고리의 다른 글
220221 PyQt5 QComboBox drop-down list text center align (0) | 2022.02.21 |
---|---|
220221 PyQt5 QComboBox text align center (0) | 2022.02.21 |
220112 wxPython 설치 (0) | 2022.01.13 |
201007 남박사 강좌 쥬피터 노트북 사용법 (0) | 2020.10.07 |
200816 MongoDB를 위한 Robo 3T 설치 (0) | 2020.09.16 |