Encoding in the QTableView
-
oh a tad to late :)
https://www.dropbox.com/s/3ajogwsoc7n1zjg/myfirstviewEDITED_hash.zip?dl=0 -
oh a tad to late :)
https://www.dropbox.com/s/3ajogwsoc7n1zjg/myfirstviewEDITED_hash.zip?dl=0@mrjj @SGaist
I started to work and I found one bag.
My table is:
Roberto
Jackson
1002
1
And that's my txt file:
1002,Hello
1,How are you
So the result in the table is
Roberto
Jackson
Hello
How are youIt's good. Correct work.
But if I change 1002 to 10--02 then all const values in the table will become like a second value for 10--02. The result will become:
Hello
Hello
Hello
How are you
You can see that, just edit in table Maria to 10--02 and add 10--02 to txt file. What is that? -
@ro12man3 said:
10--02
hi
If you change the first field in file to 10--02
it it no longer a valid integer.
Our hash is Int, String
so that mean use int as key and get back string
when we read "10--02", and say toInt() we get 0 or something undefined.If you need to use a key that is not really a integer. like 10--02, then
you must change the hash to be Qstring, QString and NOT use toInt() when inserting
into hash.
So make sure your text format fits the Hash or strange things will happen :) -
@ro12man3 said:
10--02
hi
If you change the first field in file to 10--02
it it no longer a valid integer.
Our hash is Int, String
so that mean use int as key and get back string
when we read "10--02", and say toInt() we get 0 or something undefined.If you need to use a key that is not really a integer. like 10--02, then
you must change the hash to be Qstring, QString and NOT use toInt() when inserting
into hash.
So make sure your text format fits the Hash or strange things will happen :)@mrjj Ok. It was
// In .h file: QHash<int, QString> hash; ...... hash[fields[0].toInt()] = fields[1] ; ...... // In .cpp file: QString mapped = hash.value(value.toInt());
After editing it's:
// In .h file: QHash<QString, QString> hash; ...... hash[fields[0]] = fields[1] ; ...... // In .cpp file: QString mapped = hash.value(value);
Is it correct?
-
hi
yes, seems fine. good work.
i think you might need
QString mapped = hash.value(value.toString);
as value is variant and hash wants string. -
hi
yes, seems fine. good work.
i think you might need
QString mapped = hash.value(value.toString);
as value is variant and hash wants string.