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

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

12.10.2013, 17:32. Показов 3265. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru