파이썬에서 GUI 만들기 tkinter 사용하여 그 1
개요
파이썬으로 만든 툴을 실행할 때, 스스로 만든 것이라면 커맨드 라인에서 호출하는 것도 문제는 없습니다만, 개발과 관련이 없는 쪽이 사용하는 툴의 경우 화면에서 조작할 수 있는 쪽이 편리함이 좋다. 파이썬으로 앱을 만들 수 없는지 여러가지 조사해 만든 내용을 정리해 보았습니다. 아직 제작 쓰레기가 달콤하기 때문에 서서히 조정해 나갈 예정입니다.
필요한 것
공개 위치
github에서 공개하고 있습니다.
htps : // 기주 b. 이 m / s의 wp f14 / e tc rs / t / r / py tongui
처리 내용
이전에 만든 selenium 연습 사이트 작업을위한 스크립트 여기 참조 , 엑셀 파일 열 추가, 행 삭제 스크립트 여기 참조
StringVar()
를 사용합니다.
inputFolder=StringVar()
outputFolder=StringVar()
def openFile(self):
fTyp = [('','*.xlsx')]
iDir = os.path.abspath(os.path.dirname(__file__))
filename = filedialog.askopenfilename(filetypes = fTyp,initialdir = iDir)
return filename
def fileButton(self):
filename= self.openFile()
self.inputFileName.set(filename)
doExecute
가 됩니다.
def doExecute(self):
# threading.Lock
thread=threading.Thread(target=self.execute)
thread.start()
def execute(self):
excelFile=pd.ExcelFile(self.inputFileName.get())
reserveSheetTemp=excelFile.parse(sheet_name='予約シート',dtype='str',header=1)
print(reserveSheetTemp.head())
log=LoggerObj()
driver=webdriver.Chrome('C:/webdrivers/chromedriver.exe')
driver.get('http://example.selenium.jp/reserveApp/')
reserveSheet=reserveSheetTemp.query('無効フラグ != "1"')
testSideOrder=TestSiteOrder(driver,log,'test')
# 勤務時間入力
testSideOrder.inputOrder(reserveSheet)
testSideOrder.createOkDialog('処理完了','登録処理完了')
tkinter.TK()
를 사용해 화면의 정의를 만들어 갑니다.root= tkinter.Tk()
def main(self):
root.title("Python GUI")
content = ttk.Frame(root)
frame = ttk.Frame(content, relief="sunken", width=400, height=500)
textvariable
를 사용해 StringVar
로 선언한 것을 지정하면 항목의 변경을 반영시킬 수가 있습니다. command
로 시작하는 함수를 설정합니다. mainloop()
를 호출하여 화면을 계속 표시 할 수 있습니다. content.grid(column=0, row=0)
title.grid(column=0, row=0, columnspan=4)
fileLabel=ttk.Label(content,text="予約情報")
resultFolderLabel=ttk.Label(content,text="フォルダ指定")
fileInput=ttk.Entry(content,textvariable=self.inputFileName,width=70)
resultFolderInput=ttk.Entry(content,textvariable=self.outputFolder,width=70)
self.progressMsgBox=ttk.Label(content,textvariable=self.progressMsg,width=70)
self.progressBar=ttk.Progressbar(content,orient=HORIZONTAL,length=140,mode='indeterminate')
self.progressBar.configure(maximum=10,value=0)
fileInputButton=ttk.Button(content, text=BUTTON_LABEL_REFERENCE,command=self.fileButton)
resultDirectoryInputButton=ttk.Button(content, text=BUTTON_LABEL_REFERENCE,command=self.inputResultFolderButton)
executeButton=ttk.Button(content,text='実行',command=self.doExecute)
fileExecuteButton1=ttk.Button(content,text='ファイル操作 挿入実行',command=self.fileInsert)
fileExecuteButton2=ttk.Button(content,text='ファイル操作 デリート実行',command=self.fileDelete)
root.mainloop()
시작하면 다음과 같은 화면이 표시됩니다.
우선 이번에는 이 정도로
계속 만들었습니다.
Reference
이 문제에 관하여(파이썬에서 GUI 만들기 tkinter 사용하여 그 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/snowp/items/1c15533038b8c4d2447c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)