Как изменить цвет фона контейнера, используя формат Hex?

Я разрабатываю мобильное приложение BlackBerry 10, используя IDE-компонент моментальных действий (нативный SDK).

Я хочу изменить цвет фона контейнера с помощью C ++. Но, к сожалению, в связи с этим [ссылка на сайт], вы можете определить его только так:

**Creating a color in C++:**
Color c1 = Color::fromRGBA(0.5f, 1.0f, 0.2f, 0.8f);
Color c2 = Color::fromARGB(0xff996633);

Для цвета я хочу использовать шестнадцатеричный формат («#xxxxxx»). Кто-нибудь может мне помочь в этом?

1

Решение

Color c2 = Color::fromARGB(0xff996633); использует hex 0x is c++ representation of a hex code, ff является компонентом A, 99 является R, 66 является G и 33 является B

Так что если вы хотите использовать шестнадцатеричное значение # 000099 без альфа

тогда было бы

Color::fromARGB(0x00000099)

Следующий код преобразует строку в шестнадцатеричное значение, однако вам нужно будет сначала удалить # из строки, а затем передать строку в буферный объект.

#include <iostream>
#include <sstream>

int main() {

std::string hexString("#ffffff");
hexString.erase(hexString.begin());

std::istringstream buffer(hexString);

int value;

buffer >> std::hex >> value;

std::cout << std::hex << value;
return 0;
}
2

Другие решения

Других решений пока нет …