ListBox (Chanel list) color

Indította udvatt108, 2017-10-27, 22:27:49

Tudom lehet low kérdés, de ha nem kutattam 1 órán át akkor semeddig, ráadásul eredménytelenül, minden ui.py-ben lévő színgenerálásnál próbálkoztam, de nem változik az a fránya alap kék és szürke...

"Igen figyeltem hogy a grp  átváltásra: (R /255, G /255,  B/255, 1.0)." - Nem ezzel lesz a baj.

Szóval, hol kell megváltoztatni az alap ListBox select (on, off, focus) színét?

Valaki szánjon meg lécci. :P
Egy programozási nyelv akkor alacsony szintű, ha arra kényszeríti az embert, hogy az érdektelen dolgokra is odafigyeljen.

Csak 1 gyors tipp:
ListBoxEx
def OnSelectedRender(self):
x, y = self.GetGlobalPosition()
grp.SetColor(grp.GenerateColor(0.0, 0.0, 0.7, 0.7))
grp.RenderBar(x, y, self.GetWidth(), self.GetHeight())

Mivel csak a kék van állítva, nagyon esélyesnek látom h ez az.

2017-10-27, 23:00:25 #2 Utolsó szerkesztés: 2017-10-27, 23:02:56 Szerző: udvatt108
Nem erre tippeltem volna mert, a ui window felépítésnél a szimpla ListBox van type-nél megadva és az a class nem utal át az általad említettre, de mindjárt megnézzük... :)

Üzenet összefésülés: 2017-10-27, 23:02:56

Hát ez nem jött össze... Ezt is próbáltam az előbb is meg most is, mint mondtam minden color generálást átírtam hátha, de én esküszöm nem hiszem el, hogy nem tudom megváltoztatni...
Egy programozási nyelv akkor alacsony szintű, ha arra kényszeríti az embert, hogy az érdektelen dolgokra is odafigyeljen.

2017-10-27, 23:14:21 #3 Utolsó szerkesztés: 2017-10-27, 23:15:52 Szerző: 5310pati
Akkor ez, ListBox classban:
if localeInfo.IsCANADA():
SELECT_COLOR = grp.GenerateColor(0.9, 0.03, 0.01, 0.4)
else:
SELECT_COLOR = grp.GenerateColor(0.0, 0.0, 0.5, 0.3)

grp.SetColor(SELECT_COLOR)
def OnRender(self):
xRender, yRender = self.GetGlobalPosition()
yRender -= self.TEMPORARY_PLACE
widthRender = self.width
heightRender = self.height + self.TEMPORARY_PLACE*2

if localeInfo.IsCIBN10:
if -1 != self.overLine and self.keyDict[self.overLine] != -1:
grp.SetColor(HALF_WHITE_COLOR)
grp.RenderBar(xRender + 2, yRender + self.overLine*self.stepSize + 4, self.width - 3, self.stepSize)

if -1 != self.selectedLine and self.keyDict[self.selectedLine] != -1:
if self.selectedLine >= self.basePos:
if self.selectedLine - self.basePos < self.showLineCount:
grp.SetColor(SELECT_COLOR)
grp.RenderBar(xRender + 2, yRender + (self.selectedLine-self.basePos)*self.stepSize + 4, self.width - 3, self.stepSize)

else:
if -1 != self.overLine:
grp.SetColor(HALF_WHITE_COLOR)
grp.RenderBar(xRender + 2, yRender + self.overLine*self.stepSize + 4, self.width - 3, self.stepSize)

if -1 != self.selectedLine:
if self.selectedLine >= self.basePos:
if self.selectedLine - self.basePos < self.showLineCount:
grp.SetColor(SELECT_COLOR)
grp.RenderBar(xRender + 2, yRender + (self.selectedLine-self.basePos)*self.stepSize + 4, self.width - 3, self.stepSize)


Üzenet összefésülés: 2017-10-27, 23:15:05

Teszteltem, az az.

2017-10-27, 23:18:11 #4 Utolsó szerkesztés: 2017-10-30, 12:40:56 Szerző: udvatt108
Az első próbálkozásom ott volt, de az ugyan úgy kék marad, hiába rikitó pirosra állítom.
Egy programozási nyelv akkor alacsony szintű, ha arra kényszeríti az embert, hogy az érdektelen dolgokra is odafigyeljen.

Akk máshogy van a te kliensed, keresgélj még.