Как установить отдельные цвета в GDI+ Color?C++

Программы на C++. Форум разработчиков
Anonymous
Как установить отдельные цвета в GDI+ Color?

Сообщение Anonymous »

Класс GDI+ Color имеет функции Get*, которые возвращают значения определенных цветов и альфа-канала (например, GetR и GetRed; две из них предназначены для одного и того же! ) и в то же время не хватает функций Set для отдельных каналов. Существуют только функции типа SetValue, которые устанавливают все компоненты сразу, что не совсем удобно.
Конечно, я всегда могу написать

Код: Выделить всё

inline void SetAlpha(Color& color, BYTE alpha) {
color.SetValue(Color::MakeARGB(alpha, color.GetR(), color.GetG(), color.GetB()));
}
и то же самое для других компонентов Color, но мне не хватает какого-то простого способа доступа к компонентам Color?
Если нет, то в чем может быть причина такой конструкции? Это своего рода соображения совместимости или производительности?


Подробнее здесь: https://stackoverflow.com/questions/790 ... -gdi-color

Вернуться в «C++»