![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Bitmap ! ! !
Демонов Е.В. © (2002-09-30 14:44:00)У меня есть компонент - У него есть всойство Glyph:Tbitmap и свойство Enable:Boolean , Как мне зделать так чтобы при Enable=false Glyph получался серым, т.е. как у TBitBtn ?
пробовал разобратся в исходниках TBitBtn, но что то не очень у меня полуилось. Помогите !!!!!!!!!!!!!!!
Slym (2002-10-02 06:40:00) [1]Попробуй так:
var BBitmap:TBitmap;
begin
BBitmap:=TBitmap.Create;
BBitmap.assign({Цветной битмап});
BBitmap.Monochrome:=true;
Canvas.Draw(x,y,BBitmap);
BBitmap.Free;
end;
//"изложение" по изходникам TImageList
Демонов Е.В. (2002-09-30 17:35:00) [2]>>Игорь Шевченко
Как Делает. Ну подскажите!
>>Рыжик
>>Что касается случая, когда NumGliph=1 и not Enabled, то там >>изменение цвета происходит за счёт TControl, а не BitBtn.
Так как происходит - я рылся в исходниках так и не понял
P.S.: Мой компанент прямой потомок TComponent.
Набережных С. (2002-09-30 17:33:00) [3]
> Демонов Е.В. ©
Тебе будет интересен TButtonGlyph.CreateButtonGlyph.
Игорь Шевченко (2002-09-30 17:01:00) [4]Рыжик © (30.09.02 16:15)
> А НЕ ДЕЛАЕТ ЦВЕТНУЮ СЕРОЙ!!!
Мне очень жаль, но делает :-)
С уважением,
Рыжик (2002-09-30 16:40:00) [5]
> Демонов Е.В. © (30.09.02 15:42)
> А попробуй не трогать это свойство - вставь одну картинку
> и Enable:=False - оба и NumGlyphs тут ни причём .
Что касается случая, когда NumGliph=1 и not Enabled, то там изменение цвета происходит за счёт TControl, а не BitBtn.
Рыжик (2002-09-30 16:15:00) [6]У BitBtn будет серые иконки, если картинка в Gliph содержит на самом деле две картинки друг за другом. NumGliph указывает, сколько картинок в Gliph, а затем BitBtn сам переключает нужную. А НЕ ДЕЛАЕТ ЦВЕТНУЮ СЕРОЙ!!!
Демонов Е.В. (2002-09-30 15:42:00) [7]>>Хонь-юнь
А попробуй не трогать это свойство - вставь одну картинку и Enable:=False - оба и NumGlyphs тут ни причём .
Хонь-юнь (2002-09-30 15:34:00) [8]Ещё у BitBtn есть такое свойство NumGlyphs, интересно, зачем оно? Может, здесь собаки зарыты?
Polevi (2002-09-30 15:28:00) [9]Glyph.Canvas.Brush.Color:=clBtnFace;
Glyph.Canvas.FillRect(Glyph.Canvas.ClipRect);
Демонов Е.В. (2002-09-30 15:17:00) [10]>>CreateCompatibleBitmap
И Что энта ф-ия делает ?
Демонов Е.В. (2002-09-30 15:15:00) [11]Да рисовать я умею - я только не знаю как из цветного БИТМАПА Сделать чёрно-белый (ДИЗЕйБЛьНЫЙ).
Polevi (2002-09-30 15:11:00) [12]блин, все напутал
вообщем тебе надо CreateCompatibleBitmap
Polevi (2002-09-30 15:09:00) [13]CreateCompatibleDC, и рисуй на этом DC что хочешь