Seite 1 von 1

wert aus Tabellenzelle auslesen

Verfasst: Freitag 30. April 2010, 07:45
von xWolf
Hallo,

ich arbeite mit dem QTableWidget uns beschreibe eine Tabellenzelle wie folgt:

Code: Alles auswählen

      content = QtGui.QTableWidgetItem(self._Text) # must be always string ! 
      content.setFont(QtGui.QFont(self._Font,self._Size))
      #...calculate color in RGB !!!!!!!!!!!!!!!!!!!!!!
      # Microsoft stores RGB in direction BGR -> from right to left
      # 0000FF means red
      # FF0000 means blue
      b = int(self._Background/65536)
      c = int(self._Background-(65536*b))
      g = c/256
      c = int(c-256*g)
      r = c
      #...calc end --------------------------------------
      mColor = QtGui.QColor(r,g,b)
      #mColor.setRgb(r,g,b) 
      content.setBackgroundColor(mColor)
      content.setTextAlignment(int(self._alignment))
      if self.table.columnCount()-1 >= self._Column:
         self.table.setItem(self._Row, self._Column, content)
Das klappt alles zu meiner Zufriedenheit.
Nur moechte ich gern z.B. eine Zelle auslesen.
Einfache Versuche wie:

Code: Alles auswählen

myText = self.table.item(i,t).Text()
klappen natuerlich nicht. (War auch nur geschaetzt , waere zu einfach :D )
In der von Riverbank im Internet bereitgestellten Doku blicke ich nicht so richtig durch.
Ich moechte nicht mit dem Model arbeiten, da mein bisher geschriebenes Programm mit dem QTableWidget ganz gut zurecht kommt.

Hat jemand auf der "Nicht-Model-Basis" eine Idee?

Wolf

Re: wert aus Tabellenzelle auslesen

Verfasst: Freitag 30. April 2010, 08:02
von xWolf
OK, ich scheine selbst auf die Lösung gekommen zu sein:

Code: Alles auswählen

item = self.table.item(self._Row, self._Column)
a = item.text()
print unicode(a)
Ich bin beim Testen lange Zeit noch über die unicode-Fehlermeldung und eine "NONE-Object" Meldung gestolpert und habe nicht gesehen, das andere Zellen korrekt gelesen und ausgegeben wurden.

Wolf

Verfasst: Freitag 30. April 2010, 10:17
von DasIch
Du kennst dass Konzept von Table Views/Models? Dann musst du dich um solche Details nicht mehr wirklich kümmern.

Verfasst: Samstag 1. Mai 2010, 12:30
von xWolf
DasIch hat geschrieben:Du kennst dass Konzept von Table Views/Models? Dann musst du dich um solche Details nicht mehr wirklich kümmern.
Nein, ich kenne es nicht.
Gibt's da Vorteile?
Und das auslesen einer Zelle muss man doch auch programmieren, oder?

Wolf