次のファイルアップロードコードがあります。このコードを次の 2 つの点で変更したいと思います。1. ユーザーが askopenfilenames コマンドをキャンセルすると、プログラム全体が停止します。2.ユーザーが必要な数のファイルを選択しない場合、正しい数のファイルが選択されるまで、関数 fileupload が再起動されます。
import Tkinter
from Tkinter import Tk
tk=Tk()
from tkFileDialog import askopenfilenames
import tkMessageBox
def fileupload():
tk.withdraw()
uploadedfiles = askopenfilenames(multiple=True)
##if user cancels: (IF STATEMENT TO RESULT IN MESSAGEBOX AND CODE TO STOP)
###tk.withdraw()
###tkMessageBox.showinfo(message="File Upload has been cancelled program will stop")
##Stop code
if len(uploadedfiles)>2 or len(uploadedfiles)<2:
tk.withdraw()
tkMessageBox.showinfo(message="2 files have not been selected!")
##rerun function to reselect files
return uploadedfiles
uploadedfiles=fileupload()
print uploadedfiles