GI ET11000 4K, GI ET7000 Mini, Xtrend ET9000,9200 HD Twin, Xtrend ET5000,6000 HD > Уголок программиста
Вопросы и ответы по программированию Python
nikolasi:
--- Цитата: ака Учкун от 08 Март 2013, 08:21:25 ---Вот с этим пока у меня не получается.
В стандартном размере вывести без проблем, а вот через resize никак не хочет работать гад....
--- Конец цитаты ---
Зависит от того как вы пиконы вписываете.Судя по вашему коду то перерозмерить проще через picload вписав в него например брать размер пикона и делить его на 2(тоисть получите не 100 на 60 а 50 на 30) .Смотрел ваш код-очень все логично отличная работа.Тока одно смущает(не сочтите за критику или навязывание своей идеи).Вывод картинок для прогрессбаров.По вашему коду вы полностью отказались от пнг со скинов а ведь очень много скинов в листе имеют вписанные свои пнг для прогрессбаров...я бы сделал так
--- Код: --- elif attrib == 'picServiceEventProgressbar':
pic = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, value))
if pic:
self.picServiceEventProgressbar = pic
--- Конец кода ---
и дописав
--- Код: --- self.selectionPixmap = None
self.picServiceEventProgressbar = None
--- Конец кода ---
тогда там где прогрессбары у вас можна сделать по типу вот так
--- Код: --- if self.picServiceEventProgressbar == None:
res.append((eListboxPythonMultiContent.TYPE_PROGRESS,
.
.ваш код
else:
pixmap = self.picServiceEventProgressbar
res.append((eListboxPythonMultiContent.TYPE_PROGRESS_PIXMAP,
.
.ваш код
--- Конец кода ---
так будет если картинки нет в писанной в скине выводить прогрессбар если есть-то прогрессбар используя картинку со скина
nikolasi:
О переносе прогрессбаров или процентов по вашему же коду....Я покажу как можете сделать тока писанины будет куча у вас))) смотрите
напримере прогрессбаров
ваш код сейчас
--- Код: --- res.append((eListboxPythonMultiContent.TYPE_PROGRESS,
xPos+3,
11,
52,
8,
percent,
1,
foreColor,
foreColorSelected))
res.append((eListboxPythonMultiContent.TYPE_TEXT,
xPos+58,
0,
57,
height,
0,
RT_HALIGN_RIGHT | RT_VALIGN_CENTER,
text,
serviceDescriptionColor,
foregroundColorSel,
backgroundColor,
backgroundColorSel))
xPos += 120
--- Конец кода ---
xPos+3- положение сейчас прогрессбара так? есть понятие width- width = self.l.getItemSize().width()логично взять нужный вам размер прогрессбара и отнять его от width(это размер беретса со скина тоисть ширина для листа)получитса вот так
--- Код: --- res.append((eListboxPythonMultiContent.TYPE_PROGRESS,
width - 60,
11,
52,
8,
percent,
1,
foreColor,
foreColorSelected))
res.append((eListboxPythonMultiContent.TYPE_TEXT,
--- Конец кода ---
тоисть мы отняли 52(размер прогрессбара в длину плюс 8 что бы не залазил за края) да и по логике xPos+58, уже не ставим что бы следующие элементы не брали отступ в своем начале.Это мы сделали но есть еще дескрипшен у вас поэтому в пункте для вывода описания отнимаем теперь наших 60 плюс длину прогрессбара и того -112 это вписуем в пункте вывода text = '(%s)' % event.getEventName()
тоисть будет так
--- Код: --- res.append((eListboxPythonMultiContent.TYPE_TEXT,
xPos,
0,
width - xPos -112,
height,
2,
RT_HALIGN_LEFT | RT_VALIGN_CENTER,
text,
serviceDescriptionColor,
serviceDescriptionColorSelected,
backgroundColor,
backgroundColorSel))
--- Конец кода ---
по логике так....попробуйте...тока писать очень много)) учитывая что у вас вписано вывод картинок для прогрессбаров куча...
Добавлено: 08 Март 2013, 14:22:37как в Cooltvguide не знаю-я не ломаю код чужой.Просто если по логике то чет похожее...Все что сделал кто-то в питоне можна сделать как минимум по 3 разным вариантам чем питон мне и нравитса...
nikolasi:
Можна и MultiContent я ж пример привел на основе вашего кода который вы сейчас используете.Да и разницы впринцыпе почти никакой.Но лучше использовать модуль eListbox по моему мнению-слишком много инфы перелопачивает список...А No EPG data available в списке-не пестрит так?Както думаю привычнее когда нет описание и пусто-быстрее вроде понимаеш что его нет))
nikolasi:
тота я смотрю что очень знакомое но не помню где видел))) а вообще у вашего проэкта огромная перспектива-не нужно патчить бинар и либы а функций и возможностей стока скока фантазии хватит))) что сказать-вы сделали огромное дело думаю все пользователи вам должны говорить тока спасибо.Тока все же лучше все делать через eListbox-все что идет через либы напрямую не тормозит функции если же задействован питон-тут буду тормоза которые побороть практически не реально.
nikolasi:
да и я не професиональный программист....может больше чуть вашего знаю так как за стока лет опыта поднабралса да и практике тоже....и получаетса у вас оченб хорошо.Если надо чего-спрашивайте-могу помогать вам в меру соих возможностей.а код не смотрю из-за принцыпа-у нас с индб пару лет назад очень многое потянули арабы были и пшеки тоже.Поэтому с тех пор принцып-тока свое тока своими мозгами плюс защищать свое от недобросовестных пользователей других команд
Добавлено: 09 Март 2013, 14:52:42вот тоже эксперементировал со своим списком....можна выводить нехт евент но.....даже не знаю....места много надо тогда но если увеличить размер между строками-намного меньше влезет строк...а вот добавить начало и конец текущей передачи скорее всего будет полезно....это так-размышления вам)).Все упираетса тока в вашу фантазию
Навигация
Перейти к полной версии