Notice
Recent Posts
Recent Comments
Tags
- 맥 오라클설치
- 타임피커
- 404에러페이지
- asp.net dropdownlist
- 하드 윈도우 복사
- php 캐쉬제거
- Mac Oracle
- javascript 바코드 생성
- javascript 유효성체크
- TempData
- jquery 바코드생성
- asp.net core Select
- javascript 바코드스캔
- 하드 마이그레이션
- ViewBag
- asp.net Select
- 바코드 생성하기
- javascript redirection
- 강제이동
- XSS방어
- 파일업로드 체크
- django 엑셀불러오기
- 파일업로드 유효성체크
- SSD 복사
- ViewData
- 바코드 스캔하기
- 말줄임표시
- jquery 바코드
- ASP.Net Core 404
- XSS PHP
웹개발자의 기지개
[python] tkinter - 파일탐색기 본문
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
from tkinter import *
import os
import os.path
## 함수 선언부
# 왼쪽 폴더박스를 클릭했을때
def clickListBox(event):
global currentDir, searchDirList
if (dirListBox.curselection() == ()) : # 다른 리스트박스를 클릭할 때는 바로 끝낸다.
return
dirName = str(dirListBox.get(dirListBox.curselection())) # 클릭한 폴더명
if dirName=='상위폴더':
if len(searchDirList)==1 : # 상위폴더를 클릭했는데 현재 C:\\이면 무시한다.
return
searchDirList.pop() # 상위폴더 이동이라 마지막 검색 폴더(현재 폴더)
else :
searchDirList.append(currentDir + dirName + '\\') # 검색 리스트에 클릭한 폴더 추가한다.
fillListBox()
# 박스에 내용채우기 (왼쪽, 오른쪽 박스 모두)
def fillListBox():
global currentDir, searchDirList, dirLabel, dirListBox, fileListBox
dirListBox.delete(0,END) # 폴더 리스트 박스 지우기
fileListBox.delete(0,END) # 파일 리스트 박스 지우기
dirListBox.insert(END,"상위폴더")
currentDir = searchDirList[len(searchDirList)-1]
dirLabel.configure(text = currentDir)
folderList = os.listdir(currentDir)
for item in folderList:
if os.path.isdir(currentDir + item):
dirListBox.insert(END,item)
elif os.path.isfile(currentDir + item):
fileListBox.insert(END,item)
## 전역 변수 선언
window = None
searchDirList = ['C:\\'] # 검색한 폴더 목록의 스택
currentDir = 'C:\\'
dirLabel, dirListBox, fileListBox = None, None, None
## 메인 코드
window = Tk()
window.title("폴더 및 파일 목록 보기")
window.geometry('300x500')
dirLabel = Label(window,text = currentDir)
dirLabel.pack()
dirListBox = Listbox(window)
dirListBox.pack(side=LEFT, fill=BOTH, expand=1)
dirListBox.bind('<<ListboxSelect>>', clickListBox)
fileListBox = Listbox(window)
fileListBox.pack(side=RIGHT, fill=BOTH, expand=1)
fillListBox() # 초기에는 C:\\폴더 목록 만든다.
window.mainloop()
|
cs |
'python' 카테고리의 다른 글
[python] tkinter - Database 예제 (SQLite) (0) | 2021.03.29 |
---|---|
[python] tkinter - 이벤트 처리3 - 텍스트박스 (0) | 2021.03.28 |
[python] tkinter - 메뉴와 대화상자3 - 이미지파일 선택[2] (0) | 2021.03.28 |
[python] tkinter - 메뉴와 대화상자3 - 이미지파일 선택[1] (0) | 2021.03.28 |
[python] tkinter - 메뉴와 대화상자2 - 파일저장 (4) | 2021.03.28 |
Comments