- 22 名前:デフォルトの名無しさん [2009/04/21(火) 01:09:36 ]
- >> 18
>QVariantのtoList()は、"0,1"の場合、要素数2のリストを作ってくれますが、 >"0"のようにカンマが無い場合、要素数が0になってしまうようです。 >要素の数でなく、カンマの数で要素数が決まる?ようです。 QVariant values = settings.value("TESTKEY", QVariant(QList<QVariant>())); として、読み込んだ場合、値によって返ってくるvaluesの型が違ってくるように実装されているようです。 ファイルの値が TESTKEY=10,20 のとき、valuesは、QVariant(QList<QString>())になっています。 このとき、リスとの各要素(QStringの中身)は、"10"と"20"になっています。 ファイルの値が TESTKEY=10 のとき、valuesは、QVariant(QString())になっています。 このとき、QStringの中身は、"10"です。 ファイルの値が TESTKEY= となって値が設定されていない時、上と同じくvaluesは、QVariant(QString())になっています。 このとき、QStringの中身は、""です。 以上を踏まえて値をとるようにすればよいのではないでしょうか。
|

|