Вниз
Скачать: CL | DM;

Помогите разобраться с рисованием, пожалуйста.   Найти похожие ветки 

← →
Дельфятник   (2002-09-09 16:54) [0]

Я сделал компонент (TNewRadioGroup), являющийся наследником TRadioGroup, у которого есть свойство Canvas и ловится событие OnPaint. На обработчик этого события (OnPaint) в программе я повесил рисование картинок напротив радиокнопок. И я хочу, чтобы картинка менялась в зависимости от свойства Enabled радиокнопки, которой соответтсвует эта картинка. Делаю я это так:

procedure TInputForm.BalGroupPaint(Sender: TObject);
var BitMap: TBitMap;
i: Byte;
begin
BitMap:=TBitMap.Create;
Application.ProcessMessages;
try
with Sender as TNewRadioGroup do for i:=0 to Items.Count-1 do
begin
if Items[i]="1" then BitMap.Assign(OneB.Picture)
else if Items[i]="2" then BitMap.Assign(TwoA.Picture)
else if Items[i]="3" then BitMap.Assign(ThreeA.Picture)
else if Items[i]="4" then BitMap.Assign(ThreeB.Picture)
else if Items[i]="5" then BitMap.Assign(ThreeC.Picture)
else Continue;
if Controls[i].Enabled then Canvas.CopyMode:=cmSrcAnd
else Canvas.CopyMode:=cmSrcPaint;
Canvas.Draw(Controls[i].Left+17,Controls[i].Top-12,BitMap)
end
finally
BitMap.Free
end
end;

Картинки эти - это рисунки геометрических фигур на белом фоне. Проблема состоит в том, что эти картинки иногда рисуются как надо - если Controls[i].Enabled=True, то белый фон закрашивается цветом TRadioGroup, на которой он лежит (clBtnFace), и если Controls[i].Enabled=False, то на белом фоне блекло рисуются эти геометрические фигуры, а иногда почему-то рисуются эти фигуры на белом фоне независимо от свойства Controls[i].Enabled. Свойства Controls[i].Enabled меняются в зависимости от действий пользователя.
В чём может быть дело?


← →
Дельфятник   (2002-09-09 18:03) [1]

Уже ничего не надо - я разобрался.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
1-85911
Alek Aaz
2002-12-17 08:13
2002.12.26
Скажите точно, скока вешать?


6-86057
ALexe
2002-10-30 11:17
2002.12.26
как получить имя хоста по его IP адресу


1-86016
Igorek
2002-12-16 13:22
2002.12.26
Текст битмапным шрифтом вертикально


3-85850
atmamont
2002-12-07 16:35
2002.12.26
лучший способ заполнения primary key в парадоксе


14-86179
Zombik666
2002-11-26 11:20
2002.12.26
Не могу поставить Delphi 5 под Windows 2000




   Наверх