Форум сайта python.su
Всем доброго!
Подскажите пожалуйста может ли appuifw.query при заполнении показывать делать визуально проверку количества символов. Например Необходимо набрать 12 цифр и при загрузке программы табло query показывает 12 звездочек когда начинаешь набирать звездочки заменяются цифрами больше 12 набрать нельзя меньше тоже.
Как это можно реализовать?
Офлайн
Я считаю что нет. Единственный вариант, сделать так:
result = u''
while len(result) != 12:
result = appuifw.query(u'label', 'text', result)
if result == None:
break
Отредактировано (Фев. 24, 2010 16:26:25)
Офлайн
Реализовать это, используя query нельзя.
Подшаманить над Text(), как вариант
Офлайн
Решил пойти по более легкому пути:
# coding:utf-8
from appuifw import *
from messaging import *
result = u''
capch = u'Введите номер'
while len(result) != 12:
result = query(capch, 'text', result)
capch = u"Неверно, необходимо 12 символов"
if result == None:
break
note(result, "info")
capch = u"Неверно, необходимо 12 символов"
Офлайн
Cover Story
И еще объясните пожалуйста, что за параметр result?
appuifw.query(u"Type a word:","text","default");
Офлайн
# -*- coding: utf-8 -*-
import appuifw
de = lambda string: string.decode('utf_8')
capch = de('Введите номер') # или 'Введите номер'.decode('utf-8')
result = u''
while True:
result = appuifw.query(capch, 'text', result)
if result == None: # Если ввод отменён
appuifw.note(de('Ввод отменён!!!'), 'error')
break
if len(result) == 12: # Если кол. верное
appuifw.note(result, 'conf')
break
else: # Если кол. не верное
appuifw.note(de('Неверно, необходимо 12 символов'), 'error')
Отредактировано (Фев. 25, 2010 16:09:58)
Офлайн
Спасибо KaBaSya, очень доступно!
Офлайн