[PyQt] How to use QHash in PyQt?
donglongchao at 163.com
Wed Feb 3 11:24:28 GMT 2010
在2010-02-03 17:41:17，"Phil Thompson" <phil at riverbankcomputing.com> 写道： >On Wed, 3 Feb 2010 10:31:44 +0800 (CST), donglongchao ><donglongchao at 163.com> >wrote: >> Hi,all >> >> I am newbie to PyQt and I have a question when I work on my app with >PyQt. >> I want to use a QDataStream to form a QHash object into a QByteArray and >> write it into a QTcpSocket.But there is an error when I run my app said >> NameError: global name 'QHash' is not defined.I have import everything >from >> QtCore and QtGui.Also I can locate qhash.sip in my computer >> (/usr/share/sip/PyQt4/QtCore/qhash.sip).So I want to know wherer is the >> problem and how to use QHash here. > >In C++ QHash is a template. For the classes that Qt provides a qHash() >implementation, PyQt implements the __hash__ method so that hash() returns >the value that qHash() returns.
But I still do not know how to create an object like QHash<int,QString>.I checked the file qhash.sip and find that
QHash<TYPE1, TYPE2> is implemented as a Python dictionary.So is it possible to convert a dict object into a QHash<TYPE1,TYPE2> object?Because I can not use a dict object with QDataStream's operator "<<" directly.
Thanks a lot.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the PyQt