{autor_name}


{text_rank}
репутация: {repa}
{registration_date}
сообщений: {posts}
{tel_link}
#{postnumber_id}

Нужно было мне небольшое окошко для ввода текста но appuifw.query не подходило из за ограничения колличества символов. Посоветовали модуль txtfield. Вот что получилось.

import appuifw import txtfield import e32 #import graphics def ru(x): return x.decode('utf-8') appuifw.app.body=text=appuifw.Text() #img=graphics.Image.open(u'e:1.png') x=3 y=3 def windows_imput(): #создаем окно заголовка output_field = txtfield.New((20, 20, 190, 140), cornertype=txtfield.ECorner2)#создаем новое поле, задаем скругление углов output_field.focus(0)#возможность ввода заблокирована #output_field.setimg(img, 0, (20, 20))#прикрепляем картинку к полю output_field.add(ru('введите текст '))#надпись в заголовке окна output_field.setpos(x, y)#координаты окна заголовка output_field.bgcolor(0xe7e3e7)#цвет фона окна заголовка #делаем поле ввода input_field = txtfield.New((20, 120, 180, 200))#создаем окно ввода input_field.focus(True)#разрешаем печатать текст input_field.setpos(x+4, y+27)#устанавливаем положение окна input_field.bgcolor(12303291)#цвет фона окна ввода #функция вставки текста из окна ввода в текстовое поле def cut_text(): input_field.focus(0) cut=input_field.get()#получаем текст из окна ввода text.add(cut)#вставляем текст в текстовое поле output_field.visible(0)#скрываем фоновое окно input_field.visible(0)#скрываем окно ввода text.bind(0xf845, cut_text)#вешаем функцию ввода текста на клавишу выбора text.bind(0xf862, windows_imput)#вызов нашего окна на зеленую app_lock = e32.Ao_lock() def exit(): app_lock.signal() appuifw.app.exit_key_handler = exit app_lock.wait()


Прикрепленный файл #1: 257_input_windows.zip (972 b)


ответ опубликован:
Рейтинг: 5
голосов: 2



Напомнить пароль