Jump to content

Recommended Posts

Posted

Добрый день.

В таблице есть колонка с чекс боксами. Задумка такая что пользователь накликивает и только потом жмет применить. Что бы при клике на чекбокс не чего не происходило (так как редактирование происходит позже), я через событие AjaxEvent его отлавливаю. Это очень медленно, визуально видно, что таблица блокируется на секунду.

Заметил что если включить dmMultiSelect + dgCheckSelect и убрать колонку- чеков (взамен её), визуально красивее и отрабатывает моментально. Так вот вопрос, можно ли как то программно нажать эти чеки?

Posted

Добрый вечер!

Если я правильно понял Ваш случай, возможно, этот пост сможет помочь:

 

Posted

Там вроде у автора поста колонка как checkbox....так как Вы дали ему пример кликать по полю "Category". А если отказаться от колонки с чеками..ну вот как на скрине что ниже

help1.png

Posted
On 11/8/2025 at 1:54 AM, Dinkin said:

Там вроде у автора поста колонка как checkbox....так как Вы дали ему пример кликать по полю "Category". А если отказаться от колонки с чеками..ну вот как на скрине что ниже

Пожалуйста, уточните задачу ещё раз, чтобы точно понять, что требуется сделать.

Posted

Да, извиняюсь...

Задача: 

Необходимо  через чек-бокс колонку отмечать пользователей, после нажать кнопку "Применить".

Как получилось решить:

Добавил колонку чек-бокс, но что бы при клике на галку не шел запрос на сервер (так как у меня не в реально времени база редактируется, а только по кнопке "Применить"...прикрепил рис.), а через событие аякс, блокирую эту операцию так:
 

void __fastcall TAllUserInWorkForm::UserGridAjaxEvent(TComponent *Sender, UnicodeString EventName,
          TUniStrings *Params)
{
    // Мы отлавливаем события когда пользователь нажимает или отжимает чек
    if(EventName != L"edit")
        return;
}

Какие сложности:

При нажатии на галки, таблица блокируется (пробует сделать запрос к БД), и нельзя сразу покликать куча галок подряд, приходится сначала выбрать строку и по второму клику нажать сам чек на ней (то есть два клика вместо одного, а еще таблица моргает после клика видимо пробует сделать запрос)

Что заметил:

Если отказаться от колонки  с чек боксами, а просто  в Options выcтавить dmMultiSelect + dgCheckSelect, то кликается быстро, не чего не думает и не подвисает. Проблема только в том, что когда я хочу открыть форму и показать тех пользователей которые были выбраны ранее (то есть сохранённые), я не знаю как это сделать (автоматом сделать выделенные строки).

 

help3.png

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...