Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
10 / 10 / 4
Регистрация: 12.10.2013
Сообщений: 249

Редактирование ячеек StringGrid по двойному клику и по нажатию Enter

12.10.2013, 17:32. Показов 3298. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть компонент StringGrid, точнее сказать его несколько продвинутая версия от TMS - AdvStringGrid, но компоненты вобщем схожи. В нем выставлено свойство EditOnDblClickOnly = true. Подозреваю, что это баг, а может быть я что-то не правильно сделал, но в режим редактирования ячейки я вхожу не только по двойному клику, но и по нажатию Enter (хотя именно так я и хочу) и просто по нажатию любой символьной клавиши. То есть если я начинаю печатать какой-то текст - грид сразу же переходит в режим редактирования, появляется Edit и вводится набираемый текст. Я хотел бы это запретить и оставить редактирование ячейки только по двойному клику или по нажатию Enter. Это можно как-то сделать?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.10.2013, 17:32
Ответы с готовыми решениями:

Редактирование по двойному клику
Есть список дел, в нем должна быть реализована функция редактирования поля по двойному клику на него. При нажатии на Enter - редакция...

Редактирование элементов ListView по двойному клику
Подскажите, пожалуйста, как в Listview сделать так, чтобы пользователь при двойном нажатии(например) по ячейке мог вводить значение или...

Редактирование заголовка вкладки по двойному клику TabControl
Добрый день! Подскажите плиз, как сделать редактирование имени вкладки (Header) по двойному клику по нему (например как у экселя)? MVVM.

2
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
12.10.2013, 18:26
Цитата Сообщение от Нитонисе Посмотреть сообщение
оставить редактирование ячейки только по двойному клику или по нажатию Enter
У непродвинутого грида свойство goEditing - false по умолчанию. Но им можно управлять по двойному клику или энтеру. Сделайте так и для своей таблицы; а по Exit - снова восстанавливать запрет на редактирование.
1
10 / 10 / 4
Регистрация: 12.10.2013
Сообщений: 249
12.10.2013, 20:12  [ТС]
Лучший ответ Сообщение было отмечено Нитонисе как решение

Решение

nick42, спасибо за идею. Вышло кажется неплохо. Вернул свойству EditOnDblClickOnly значение false. Свойство goEditing тоже установлено в false. Экземпляр TStringGrid в коде идет под именем SGLoads.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void __fastcall TFMain::SGLoadsDblClickCell(TObject *Sender, int ARow, int ACol)
{
    SGLoads->Options << goEditing;
    SGLoads->ShowInplaceEdit();
}
//---------------------------------------------------------------------------
void __fastcall TFMain::SGLoadsSelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect)
{   
    SGLoads->Options >> goEditing;
}
//---------------------------------------------------------------------------
void __fastcall TFMain::SGLoadsKeyPress(TObject *Sender, wchar_t &Key)
{
    if (Key == VK_RETURN)
    {
        if (SGLoads->EditMode)
        {
            SGLoads->Options >> goEditing;
        }
        else
        {
            SGLoads->Options << goEditing;
            SGLoads->ShowInplaceEdit();
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.10.2013, 20:12
Помогаю со студенческими работами здесь

Редактирование ячеек JTable клавишей Enter
Подскажите пожалуйста, имеется таблица JTable, при нажатии клавиши ввод фокус переходит на следующую ячейку, как сделать так, что бы при...

Редактирование ячейки StringGrid по одному клику
Есть TStringGird. После DbClick срабатывает редактирование ячейки. Как мне сделать ShowEdit (вроде он за это отвечает) по одному клику? ...

StringGrid: автоматически переходить к правой или нижней ячейке по нажатию Enter
Нашёл описание этого компонента, потихоньку разбираюсь, но встала задача, чтобы по нажатию на Enter курсор автоматически перемещался или...

Редактирование ячеек StringGrid
Здравствуйте=))) У меня вопрос: &quot;Можно ли добавлять значения в StringGrid непосредственно щёлкая мышью на нужное пересечения столбца и...

Редактирование ячеек stringgrid
Возможно ли по клику на определенную ячейку StringGrid отредактировать строку которую она содержит?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru