Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 517
Благодарности: 314

Профиль | Отправить PM | Цитировать


Цитата ROMKA-1977:
Проблема в том что если все чекбоксы отметить или снять в ручную то обновления кнопки не происходит. »
читать дальше »
Код: Выделить весь код
var
    i, nCount: Integer;
    SelectAll: TNewButton;


procedure TNewCheckListBoxOnClickCheck( Sender: TObject );
begin
    nCount := WizardForm.TasksList.ItemCount - 1;

    for i := 0 to nCount do
    begin
        case TNewCheckListBox( Sender ).Checked[i] of
            True: SelectAll.Caption := 'Очистить всё';
            False: SelectAll.Caption := 'Выбрать всё';
        end;
    end;
end;


procedure TButtonOnClick( Sender: TObject );
begin
    nCount := WizardForm.TasksList.ItemCount - 1;

    for i := nCount downto 0 do
    begin
        case TButton( Sender ).Caption of
            'Выбрать всё': WizardForm.TasksList.CheckItem( i, coCheckWithChildren );
            'Очистить всё': WizardForm.TasksList.CheckItem( i, coUncheck );
        end;
    end;

    WizardForm.TasksList.OnClickCheck( WizardForm.TasksList );
end;


procedure InitializeWizard();
begin
    WizardForm.TasksList.OnClickCheck := @TNewCheckListBoxOnClickCheck;

    SelectAll := TNewButton.Create(WizardForm);
    with SelectAll do
    begin
        Parent := WizardForm.SelectTasksPage;
        Left := ScaleX(0);
        Top := ScaleY(204);
        Width := ScaleX(75);
        Height := ScaleY(25);
        OnClick := @TButtonOnClick;
    end;
end;


procedure CurPageChanged( const CurPageID: Integer );
begin
    case CurPageID of
        wpSelectTasks: WizardForm.TasksList.OnClickCheck( WizardForm.TasksList );
    end;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:24, 13-10-2014 | #1821