|
发表于 2020-8-31 18:01:03
|
显示全部楼层
- import easygui as g
- msg = "请填写以下联系方式"
- title = "账号中心"
- fieldNames = [" *用户名", " *真实姓名", " 固定电话", " *手机号码", " QQ", " *E-mail"]
- fieldValues = [] #定义一个空列表来存储 将要输入的值 (跟fieldName一一对应)
- fieldValues = g.multenterbox(msg, title, fieldNames)
- #这一行最后一个参数是fieldNames ,即每个输入框前的名字
- while 1:
- if fieldValues == None: #输入为空
- break
- errmsg = "" #定义空字符串用来存储报错
- for i in range(len(fieldNames)): #遍历每一行
- option = fieldNames[i].strip() #取出fieldName各元素前的【*】并赋值给option
- if fieldValues[i].strip() == "" and option[0] == "*":
- #判断当输入内容(fieldValue)为空,且前面带【*】时,报错并存到errmsg中
- errmsg += ('【%s】为必填项。\n\n' % fieldNames[i])
- if errmsg == "":#毫无问题
- break
- fieldValues = g.multenterbox(errmsg, title, fieldNames, fieldValues)
- #这一行的目的是将multenterbox的全部内容返回给名为fieldValues的列表(恰巧重名而已,不必在意)
- print("用户资料如下:%s" % str(fieldValues))
- """
- 具体解释如下(官方文档):
- multenterbox()
- multenterbox(msg='Fill in values for the fields.', title=' ', fields=[], values=[], callback=None, run=True)
- multenterbox() 为用户提供多个简单的输入框,要注意以下几点:
- 如果用户输入的值比选项少的话,则返回列表中的值用空字符串填充用户为输入的选项。
- 如果用户输入的值比选项多的话,则返回的列表中的值将截断为选项的数量。
- 如果用户取消操作,则返回域中的列表的值或者 None 值。
- """
复制代码
如果解决,别忘了给个最佳 |
|