Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 24, 2010 15:09:58

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Всем доброго!
Подскажите пожалуйста может ли appuifw.query при заполнении показывать делать визуально проверку количества символов. Например Необходимо набрать 12 цифр и при загрузке программы табло query показывает 12 звездочек когда начинаешь набирать звездочки заменяются цифрами больше 12 набрать нельзя меньше тоже.
Как это можно реализовать?



Python 2.7.3
Pyside 1.1.2

Офлайн

#2 Фев. 24, 2010 15:55:41

KaBaSya
От:
Зарегистрирован: 2009-12-17
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Я считаю что нет. Единственный вариант, сделать так:

result  = u''
while len(result) != 12:
result = appuifw.query(u'label', 'text', result)
if result == None:
break
Возможно сделать некоторые вариации….



Отредактировано (Фев. 24, 2010 16:26:25)

Офлайн

#3 Фев. 24, 2010 17:11:28

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Реализовать это, используя query нельзя.
Подшаманить над Text(), как вариант



Офлайн

#4 Фев. 24, 2010 17:41:51

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Решил пойти по более легкому пути:

# 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 символов"
И еще объясните пожалуйста, что за параметр result?



Python 2.7.3
Pyside 1.1.2

Офлайн

#5 Фев. 24, 2010 21:21:34

gabin
От:
Зарегистрирован: 2009-03-07
Сообщения: 72
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Cover Story
И еще объясните пожалуйста, что за параметр result?
appuifw.query(u"Type a word:","text","default");
Это символьная строка, значение, которое отображается в диалоге по умолчанию



Офлайн

#6 Фев. 25, 2010 14:34:29

KaBaSya
От:
Зарегистрирован: 2009-12-17
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

# -*- 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)

Офлайн

#7 Фев. 25, 2010 17:54:18

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

pys60_2.0: query проверка количества символов

Спасибо KaBaSya, очень доступно!



Python 2.7.3
Pyside 1.1.2

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version