Форум: "Media";
Текущий архив: 2002.12.26;
Скачать: [xml.tar.bz2];
ВнизПомогите разобраться с рисованием, пожалуйста. Найти похожие ветки
← →
Дельфятник (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 вся ветка
Форум: "Media";
Текущий архив: 2002.12.26;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c