Probleme mit Objektübergaben - "Pointer auf Pointer&quo
Verfasst: Donnerstag 14. Juli 2005, 09:44
Irgendwie kommt bei der Übergabe von Objekten nur Müll bei mir heraus - den ich nicht verstehe. Poste mal die interessanten Codestellen:
...classe xxx wird aufgerufen und versucht mit "DomListViewItem 'nen neues Item anzulegen bzw. ein existierendes zu bekommen. Neu anlegen funzt, 'nen existierendes wirft Fehler!
Ausgabe und Fehlermeldung:
Das item existiert bereits: itemName itemPath_Tralala
itemDefType: <class 'DomListViewItem'>
Traceback (most recent call last):
File ".../xxx.py", line 249, in xyz (strPath)
print "itemDefType:", type(itemDefType), itemDefType.strName, itemDefType.strDomPath
AttributeError: strDomPath
...das Objekt wird in der ersten aufgerufenen Klasse also richtig erkannt und mit existierenden Attributen zurückgegeben (1.Ausgabe), dann per "return" an die ursprünglich aufrufende Stelle zurückgegeben - dort das Objekt zwar erkannt, aber die Attribute scheinen zerstört!
Ich bin kurz vorm Verzweifeln. Freu mich auf eure Hilfe, thx
Code: Alles auswählen
class DomListViewItem (QListViewItem):
""" eigene Erweiterung der Klasse QListViewItem..."""
def __init__ (self, itemParent, strName=''):
""" Ein neues Item wird angelegt, wenn ein Kinditem mit Namen "strName" noch nicht
existiert, sonst wird das existerende Item zurückgegeben """"
# existiert bereits ein Kinditem mit Namen "strName"?
item = HasChildItemWithName (itemParent, strName)
if item != None:
print "Das item existiert bereits:", item.strName, item.strDomPath
return item
itemDomElem = QListViewItem.__init__ (self, itemParent, strName)
# ... meine speziellen Variablen werden gesetzt ...
return self
class xxx:
def xyz (self):
itemDefType = DomListViewItem (formSDLVTK.itemDataModel,
strName=strNameDefType)
print "itemDefType:", type(itemDefType), itemDefType.strName, itemDefType.strDomPath
# ... weiterer Code ...
...classe xxx wird aufgerufen und versucht mit "DomListViewItem 'nen neues Item anzulegen bzw. ein existierendes zu bekommen. Neu anlegen funzt, 'nen existierendes wirft Fehler!
Ausgabe und Fehlermeldung:
Das item existiert bereits: itemName itemPath_Tralala
itemDefType: <class 'DomListViewItem'>
Traceback (most recent call last):
File ".../xxx.py", line 249, in xyz (strPath)
print "itemDefType:", type(itemDefType), itemDefType.strName, itemDefType.strDomPath
AttributeError: strDomPath
...das Objekt wird in der ersten aufgerufenen Klasse also richtig erkannt und mit existierenden Attributen zurückgegeben (1.Ausgabe), dann per "return" an die ursprünglich aufrufende Stelle zurückgegeben - dort das Objekt zwar erkannt, aber die Attribute scheinen zerstört!
Ich bin kurz vorm Verzweifeln. Freu mich auf eure Hilfe, thx