|
13 / 13 / 0
Регистрация: 17.08.2011
Сообщений: 172
|
|
StringGrid событие по окончанию ввода13.10.2013, 11:33. Показов 11301. Ответов 13
Метки нет (Все метки)
Как отлавливать событие, когда завершается ввод данных в ячейку StringGrid? Я хочу сделать, чтобы, когда пользователь ввёл данные в ячейку StringGrid, - данные всей таблицы будут обрабатываться, сортироваться, таблица будет обновлена и т.п. Но не могу найти соответствующее событие на окончание ввода, в стандартных событиях такого нет, как я понял. Если использую OnSetEditText, то оно наступает постоянно в процессе ввода, что расточительно в данном случае и неудобно.
0
|
|
| 13.10.2013, 11:33 | |
|
Ответы с готовыми решениями:
13
Событие по окончанию изменений Выполнение скрипта по окончанию ввода Событие DblClickCell в StringGrid |
|
Супер-модератор
|
||
| 13.10.2013, 12:40 | ||
|
Вот тут я показывал один из путей определения момента, когда закончено редактирование ячейки грида: https://www.cyberforum.ru/post4540923.html
1
|
||
|
13 / 13 / 0
Регистрация: 17.08.2011
Сообщений: 172
|
|||||||||||||||||||||
| 13.10.2013, 14:48 [ТС] | |||||||||||||||||||||
|
Да, первый способ действительно не работает при ненажатии на Enter, а потому бесполезен. А вот в вашем примере всё работает правильно, спасибо.
Добавлено через 1 час 50 минут UI, вот разбираю ваш пример, не получается... Вот вы создаёте StringGrid и затем:
E2316 'OnChangeMode' is not a member of 'TStringGrid' E2316 'OnChangeMode' is not a member of 'TStringGrid' Хорошо, тогда создаю новый проект, вставляю ваш текст: Кликните здесь для просмотра всего текста
Компилятор ругается уже на строке
Ваш же пример компилируется нормально... Что я делаю неправильно?
0
|
|||||||||||||||||||||
|
13 / 13 / 0
Регистрация: 17.08.2011
Сообщений: 172
|
|
| 13.10.2013, 16:53 [ТС] | |
|
Не, это кошмар какой-то... Уже несколько часов бьюсь, бесит уже...
В конце концов добавил в свой h всё из h вашего примера, добавил в свой cpp всё из вашего cpp. Всё равно не компилируется: [ilink32 Error] Error: Unresolved external '__fastcall TMyInplaceEdit::WndProc(Winapi::Messages ::TMessage&)' referenced from D:\DOCUMENTS\PROGRAMMING\C++\XE5\OTTO\WI N32\DEBUG\UNIT1.OBJ Добавлено через 1 минуту Компилироваться перестаёт как только видит g = new TMyStringGrid(NULL);
0
|
|
|
Супер-модератор
|
||
| 13.10.2013, 17:13 | ||
|
Ну чудес ведь не бывает, правда? Если мой проект нормально компилируется, значит, там все добавлено. Надо искать, чего не хватает... К сожалению, теоретически (не видя твоего проекта) помочь ничем не могу...
0
|
||
|
13 / 13 / 0
Регистрация: 17.08.2011
Сообщений: 172
|
||
| 13.10.2013, 17:38 [ТС] | ||
|
0
|
||
|
13 / 13 / 0
Регистрация: 17.08.2011
Сообщений: 172
|
||||||
| 15.10.2013, 17:59 [ТС] | ||||||
|
Вот сделал гораздо проще:
2
|
||||||
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
||||||
| 19.08.2019, 13:12 | ||||||
|
Я так делаю.
0
|
||||||
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
|
| 19.08.2019, 16:43 | |
|
Я запоминаю строку, а не символ.
0
|
|
|
Модератор
|
|||
| 19.08.2019, 17:55 | |||
|
0
|
|||
|
UeArtemis
18 / 18 / 3
Регистрация: 23.09.2011
Сообщений: 205
|
|
| 19.08.2019, 18:58 | |
|
Я имею в виду, что функция срабатывает при каждом изменении в строке и ЕЩЁ ОДИН раз при завершении редактирования. Сравнив новое значение с предыдущим, можно понять, закончился ли ввод в ячейку.
Два последних срабатывания функции будут с одинаковыми Value.
1
|
|
|
0 / 0 / 0
Регистрация: 15.04.2021
Сообщений: 1
|
|
| 16.04.2021, 08:07 | |
|
0
|
|
| 16.04.2021, 08:07 | |
|
Помогаю со студенческими работами здесь
14
Событие OnGetEditText в StringGrid Stringgrid событие OnSetEditText Событие на пустую область StringGrid Динамическое событие onDrawCell у StringGrid
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|