ButtonGroup
ButtonGroup.Items.Add;
ButtonGroup.Items.Caption:= DataModule.Elements.FieldByName('Element').AsString;
Как сделать так, чтобы при определенных условиях можно было кнопочку пропустить, т.е. чтобы вместо кнопки было соответствующее ей пустое место.
а вариант ставить у кнопки свойство Visible в false не подходит?
ButtonGroup1.Items.Visible:=false;
Нужен аналог. Или этот груп вообще ни на что такое не способен?
TButton(ButtonGroup1.Items).Visible := false;
Насколько я помню, TButtonGroup.Items - наследник TStrings, поэтому - вряд-ли...
короче глянул, надо обрабатывать событие OnDrawButton. Там проверять условие и от этого плясать.
а TGrpButtonItem - наследник TCollection.
вот код:
[highlight=delphi]
procedure TForm1.ButtonGroup1DrawButton(Sender: TObject; Index: Integer;
Canvas: TCanvas; Rect: TRect; State: TButtonDrawState);
begin
with Canvas do
begin
if (Условие) then
DrawFocusRect(Rect);
else
begin
DrawFocusRect(Rect);
TextOut(Rect.Left, Rect.Top, ButtonGroup1.Items[Index].Caption);
end;
end;
end;
[/highlight]
тут его конечно подточить надо конкретно, но есть от чего плясать.
Спасибо! Попробую.