Zamilovat si programování Zamilovat si programování
Pouze tento týden až 80% sleva na SQL jazyky
Zamiluj si programování! Až 80 % bodů na prémiový obsah zdarma. Více informací

Diskuze: PyQt vyfarbenie oknienka v tabuľke

Python Python PyQt vyfarbenie oknienka v tabuľke American English version English version

Aktivity (1)
Avatar
Loter
Člen
Avatar
Loter:20.12.2017 15:21

Používam tabuľku z tejto stránky ( tabuľka ). Na internete som našiel spôsob ako dokážem vyfarbiť tabuľu (self.tableWid­get.setStyleShe­et("QTableView{ background-color: rgba(255, 0, 0, 50%); }")) avšak potrebujem vyfarbiť iba určité okienko napr. 1,1 alebo 5,3. Nevie niekto ako by to išlo?

Odpovědět 20.12.2017 15:21
Kto vie dobre programovať, nemusí sa pretvarovať :)
Avatar
Odpovídá na Loter
Erik Šťastný:20.12.2017 15:24

Jednoduše, neobarvíš tabulku, ale obarvíš jen item v tabulce.

item = QTableWidgetItem()
item.setForeground(QColor(255,0,0))

tableWidget.setItem(0,0, item)
 
Nahoru Odpovědět 20.12.2017 15:24
Avatar
Loter
Člen
Avatar
Odpovídá na Erik Šťastný
Loter:20.12.2017 15:55

Program sa zasekne a padne :(

Nahoru Odpovědět 20.12.2017 15:55
Kto vie dobre programovať, nemusí sa pretvarovať :)
Avatar
Odpovídá na Loter
Erik Šťastný:20.12.2017 15:56

bez nějaké chybové hlášky ti k tomu nic nepovím

 
Nahoru Odpovědět 20.12.2017 15:56
Avatar
Odpovídá na Loter
Erik Šťastný:20.12.2017 16:05

Jinak vzal jsem kód z linku co jsi poslal přidal do něj svůj zmíněný kód tedy:

item = QTableWidgetItem()
item.setForeground(QColor(255,0,0))
item.setBackground(QColor(0, 255, 0))

tableWidget.setItem(0,0, item)

A vše funguje :-O, jediné co jsem musel udělat tak přidat jeden import:

from PyQt5.QtGui import QColor
Editováno 20.12.2017 16:06
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 20.12.2017 16:05
Avatar
Loter
Člen
Avatar
Odpovídá na Erik Šťastný
Loter:20.12.2017 16:20

Ok, už to funguje. Problém bol v tom, že som pred item nedával self.

self.item = QTableWidgetItem()
self.item.setForeground(QColor(255,0,0))

tableWidget.setItem(0,0, self.item)

Ďakujem

Nahoru Odpovědět 20.12.2017 16:20
Kto vie dobre programovať, nemusí sa pretvarovať :)
Avatar
Odpovídá na Loter
Erik Šťastný:20.12.2017 16:50

To je ale zvláštní, ty před něj určitě .self dávat nemusíš, není podmínka aby to byla proměnná instance.

 
Nahoru Odpovědět 20.12.2017 16:50
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.