Господа-граждане! Нет отрисовки рамки в GroupBox, RadioGroup,CheckGroup
Кто-нить сталкивался?
Модератор: Модераторы
Владимир писал(а):К сожалению сейчас не могу. Выглядит это так. В разработке кидаем на форму GroupBox - виден только Caption м обозначена рамка - самой рамки нет... Свойства типа Color не поддерживаются...
procedure TMainFrm.FormCreate(Sender: TObject);
var
i,l,w,t,h,fh:Integer;
nam:AnsiString;
FParent:TWinControl;
begin
//для создания bevel выясняем координаты и отцов всех GroupBox
for i:=0 to ComponentCount-1 do
if Components[i] is TGroupBox then begin
FParent:=(Components[i] as TGroupBox).Parent;
l:=(Components[i] as TGroupBox).Left;
w:=(Components[i] as TGroupBox).Width;
t:=(Components[i] as TGroupBox).Top;
h:=(Components[i] as TGroupBox).Height;
fh:=(Components[i] as TGroupBox).Font.Height;
//здесь вызвать ф-цию создания bevel как альтернативу отрисовки GroupBox
CreateBevelNew(fParent,l,w,t,h,fh);
end;
end;
//а вот и сама ф-ция
function TMainFrm.CreateBevelNew(fPar:TWinControl;l,w,t,h,f_h:Integer):Byte;
var
myBevel:TBevel;
begin
myBevel:=TBevel.Create(self);
with myBevel do begin
parent:=fPar;
Left:=l;
Width:=w;
Top:=t+f_h+round(f_h/4);//здесь внимательно - высота шрифта в utf отрицательна!
Height:=h-f_h-round(f_h/4);
Shape:=bsFrame;
Style:=bsLowered;
Show;
end;//with
CreateBevelNew:=0;//формально
end;
0beron писал(а):Что делаю не так?
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
with CheckGroup1 do
begin
CheckGroup1.Items.Clear;
for i:= 0 to 10 do
begin
Items.Add('Item ' + IntToStr(i));
//uses math
Checked[i]:= (i mod 2 = 0);
end;
end;
end;
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17