Лександер,
спасибо!
возьму твой пример
мне как раз на одной из страниц много кнопок надо, а код у тебя короткий
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Теперь у меня вопрос
допустим у меня свой кастомный(!) чекбокс для установки директикса и появляется он если снаружи есть директ икс
под ним идёт такой же, но только для визуала
ниже идут чекбоксы с самоизвлекающимися рахивами, собержащими в себе обнновления и появление их опять же зависит от двух факторов: 1 отмечен нужный компонент, 2 есть ли снаружи архив.
все эти чекбоксы очень нестабильны в своём появлении и в конечном итоге если какого то нет, то на форме они будут создаваться через однин или через 2
вопрос
как сделать добавление (какие добавятся в зависимости от...) ровно в столбик с расстоянием скажем в 10 пикселем между друг другом по вертикали
вот как я сделал пока что только с одним чекбоксом
читать дальше »
Код:

/// создание формы звдач /// часть 2 из 2 /// начало
begin
TForm := CreateCustomForm();
TForm.BorderIcons := [];
// TForm.ClientWidth := ScaleX(256);
// TForm.ClientHeight := ScaleY(256);
TForm.Caption := 'Tasks';
TForm.SetBounds(WizardForm.Left-TForm.Width-8 , WizardForm.Top, ScaleX(256), ScaleY(410));
TForm.Color := clWindow;
OKButton := TNewButton.Create(TForm);
OKButton.Parent := TForm;
OKButton.Width := ScaleX(75);
OKButton.Height := ScaleY(23);
OKButton.Left := TForm.ClientWidth - ScaleX(75 + 6 + 75 + 10);
OKButton.Top := TForm.ClientHeight - ScaleY(23 + 10);
OKButton.Caption := 'OK';
OKButton.OnClick := @FormClose;
TForm.ActiveControl := OKButton;
/// задачи на форме /// начало
If FileExists(ExpandConstant('{src}\outer\DirectX\DXSETUP.exe')) then
begin
DirectX_Checkbox := TCheckBox.Create(TForm);
with DirectX_Checkbox do
begin
Parent := TForm;
Caption := 'установить DirectX';
Left := ScaleX(8);
Top := ScaleY(8);
Width := ScaleX(300);
Height := ScaleY(15);
Checked := False;
end;
end;
/// конец
TForm.Repaint;
end;
/// конец
для этой формы есть кнопка
читать дальше »
Код:

/// создание формы звдач /// часть 1 из 2 /// начало
var
TForm: TSetupForm;
OKButton, CancelButton: TNewButton;
DirectX_Checkbox : TCheckBox;
function Run_DirectX: Boolean;
begin
Result:=DirectX_Checkbox.Checked;
end;
procedure FormButtonClick(Sender: TObject);
begin
TForm.Show;
end;
procedure FormClose(Sender: TObject);
begin
TForm.Hide;
end;
/// конец