C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
TColorComboBox, Нужно добавить свой цвет
Schumi
Отправлено: 17.01.2004, 20:56


Машинист паровоза

Группа: Участник
Сообщений: 206



В RX есть компонент TColorComboBox,где можно выбирать цвета.Но мне надо чтобы можно было добавить ещё один цвет свой,который можно было бы при необходимости менять..Можно ли это сделать?
** pasha
Отправлено: 18.01.2004, 11:36


Не зарегистрирован







CODE

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   TColor col = clSilver;
   ColorComboBox1->Items->AddObject("MyColorValue",(TObject*)col);
}
** pasha
Отправлено: 18.01.2004, 11:41


Не зарегистрирован







Или, например, через RGB:

CODE

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   TColor col2 = RGB(214,231,154);
   ColorComboBox1->Items->AddObject("MyColorValue2",(TObject*)col2);
}


Schumi
Отправлено: 18.01.2004, 22:10


Машинист паровоза

Группа: Участник
Сообщений: 206



Хотел уточнить по поводу RGB. А можно,зная цвет,допустим будет белый цвет,его инвертировать,чтобы получить чёрный. Ну это просто.Но всё же.К примеру,есть некий цвет,можно проведя какие-либо вычисления,получить второй цвет.Смысл в том,чтобы при рисовании одним цветом на фоне другого они не сливались.Как-то выходит фантастикс,но все же smile.gif
fellow
Отправлено: 20.01.2004, 05:57


Дежурный стрелочник

Группа: Участник
Сообщений: 33



Для подобных целей используют растровые операции. Например, рисование в режиме NotXor позволяет комбинировать цвет фона и цвет пера (кисти) операцией "исключающее ИЛИ" с последующей инверсией.
Schumi
Отправлено: 21.01.2004, 11:05


Машинист паровоза

Группа: Участник
Сообщений: 206



Не мог бы привести маленький примерчик smile.gif
fellow
Отправлено: 21.01.2004, 18:34


Дежурный стрелочник

Группа: Участник
Сообщений: 33



Смотрите описание свойства Mode у TPen, а также свойства CopyMode у TCanvas. Там же, у TCanvas, есть примерчик.

Вернуться в Вопросы программирования в C++Builder