[SOLVED] Reading QColor from an INI file
-
I have an entry in an INI file that is supposed to set a QColor.
When I execute the following line:
@
m_MarkerColor = IniSettings.value("Testing/MarkerColor", QColor(128, 0, 0)).value<QColor>();
@m_MarkerColor is an Invalid color. The entry in the INI file is:
@
[Testing]
MarkerColor=@QColor(0 0 128)
@I suspect that perhaps the format may be incorrect as listed in the INI file or is it how I call the value function.
Thanks in advance
-
Returns 0 (the default). How do you format the INI file for the correct value to be read? I'm only concerned with reading and not setting.
Thanks
-
look rgba format of the color conseption
place in your ini such record (just sample)
MarkerColor=4294967040
it's look like 4294967040, for example
also u can use the #FFFFFFFF expression, but remember that it is 16 number base and u must interpret it in program
-
I understand. I was wanting to set it as a QColor entry in the INI file. I wonder if that is even possible
-
[quote author="Subst27" date="1421077722"]in Assistant
An ARGB quadruplet on the format #AARRGGBB, equivalent to an unsigned int.
[/quote]So the entry in the INI file then would be:
@
MarkerColor= @QRgb(#00000080)
@OR
@
MarkerColor= #00000080
@ -
[quote author="Subst27" date="1421077722"]in Assistant
An ARGB quadruplet on the format #AARRGGBB, equivalent to an unsigned int.
[/quote]So the entry in the INI file then would be:
@
MarkerColor= @QRgb(#00000080)
@OR
@
MarkerColor= #00000080
@ -
[quote author="Subst27" date="1421077934"]why?
really possible.
you can read value as string and then analyze it whith RegExp
[/quote]
As string? Didn't consider that. OK. I'll try that
-
[quote author="Subst27" date="1421078199"]MarkerColor= #00000080
It seems the obvious and the apply the toHex()[/quote]
toHex() isn't available in this context.
-
[quote author="Subst27" date="1421078846"]try to remove # sign
it's issuer of syntax
from Assistant
QByteArray QByteArray::toHex() const
Returns a hex encoded copy of the byte array. The hex encoding uses the numbers 0-9 and the letters a-f.
[/quote]It is unclear what you are trying to illustrate.
Perhaps a trivial example?
-
[quote author="Subst27" date="1421079781"]can you wait some minutes?[/quote]
Of course
-
@QSettings settings(qApp->applicationDirPath()+"/color.ini",QSettings::IniFormat);
QColor color;
settings.beginGroup("common");
QString string=settings.value("color","#0000FF").toString();
qDebug()<<string;
string.remove(0,1);
bool ok;
uint value=string.toUInt(&ok,16);
qDebug()<<value;
color=QColor::fromRgb(value);
qDebug()<<color;@