2010-01-24 5 views
1

Я хотел бы установить свойства RadioButton во время выполнения в процедуре InitRadioGroup(). Не получается, потому что RadioGroup.ControlCount равно 0, хотя в RadioGroup есть 3 RadioButtons.Проблема с RadioGroup.ControlCount в Delphi 2010

Что не так в D2010 RadioGroup? же код работает отлично в Delphi 2007.

procedure InitRadioGroup(RadioGroup: TRadioGroup); 
var 
    i: integer; 
    RadioButton: TRadioButton; 
begin 
    for i := 0 to RadioGroup.ControlCount - 1 do 
    begin 
    RadioButton := (RadioGroup.Controls[i] as TRadioButton); 

    RadioButton.ParentColor := False; 
    RadioButton.ParentFont := False; 
    RadioButton.Font.Style := []; 
end; 

ответ

3

Я предполагаю, что RadioGroup не видно при вызове процедуры. Таким образом, RadioButtons не могут быть созданы тогда.

звонок в RadioGroup.HandleNeeded должен исправить это для вас.

+0

Вы правы. Я инициализирую многие радиогруппы, прежде чем я покажу вкладку, где представлены радиогруппы. – pKarelian

+0

Я добавил RadioGroup.HandleNeeded, и теперь все в порядке. Спасибо. – pKarelian

Смежные вопросы