Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка кол-ва символов в DBGridEh, автопереключение 
:(
    Опции темы
kulikoff
Дата 13.7.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Подскажите, как реализовать возможность, чтоб если  пользователь ввел в ячейку DBGridEh необходимое кол-во символов (вернее, максимальное для этого поля БД), то чтоб курсор автоматически переходил в следующую ячейку? Я видел такое в нескольких прогах, но как реализовать - без понятия. 
PM MAIL WWW ICQ Skype   Вверх
kulikoff
Дата 14.7.2006, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Тут порылся, решил, что наиболле правильный способ - это писать обработчик OnKeyPress, который будет следить за кол-вом символов в Cell. Подскажите примером, как правильно его написать? К чему прикрутить Length? 
PM MAIL WWW ICQ Skype   Вверх
Frees
Дата 14.7.2006, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



в OnKeyPress считай сколько символов введено если количество нажатии на кнопки больше длинны поля то меняй ячейку с фокусом на следущую и обнуляй счетчик  


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
kulikoff
Дата 14.7.2006, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



А можно примерчик? Просто никогда ничего подобного не писал, напишите пример, плиз!!! 
PM MAIL WWW ICQ Skype   Вверх
Frees
Дата 14.7.2006, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(kulikoff @ 14.7.2006,  09:51)
Тут порылся, решил, что наиболле правильный способ - это писать обработчик OnKeyPress, который будет следить за кол-вом символов в Cell. Подскажите примером, как правильно его написать? К чему прикрутить Length?

Length и не нужен 

windows.GetWindowTextLength(windows.GetFocus)

сразу возвращает длинну введенных символов 


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
kulikoff
Дата 14.7.2006, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Спасибо, отлично работает. Подскажите ещё, плиз, как перевести фокус в следующую ячейку? 
PM MAIL WWW ICQ Skype   Вверх
Frees
Дата 14.7.2006, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



переход на следущую ячейку  если текущая ячейка не последняя
 
Код

    if TDBGridEh(Sender).Columns.Count > TDBGridEh(Sender).Col then
        begin
            TDBGridEh(Sender).Col:=TDBGridEh(Sender).Col+1;
        end;
 


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
kulikoff
Дата 14.7.2006, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



Всё работает, когда ввожу в первый столбец 6 символов - автоматом переходит в следующую, но в первой то, что набирал не остается... Как написать, чтоб то, что вводил оставалось в ячейке? 
PM MAIL WWW ICQ Skype   Вверх
Frees
Дата 14.7.2006, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



надо как то по другому текущии столбец значит менять 
почитай доку на ехи может че и найдеш, может там то что те надо уже сделано 


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
kulikoff
Дата 14.7.2006, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 334
Регистрация: 5.11.2005
Где: Киев

Репутация: 1
Всего: 1



а можно ссылку на маны по ним? А то сколько не искал - ничего путнего не нашел... 
PM MAIL WWW ICQ Skype   Вверх
Akella
Дата 14.7.2006, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(kulikoff @  14.7.2006,  14:36 Найти цитируемый пост)
Всё работает, когда ввожу в первый столбец 6 символов - автоматом переходит в следующую, но в первой то, что набирал не остается... Как написать, чтоб то, что вводил оставалось в ячейке? 

посмотри в свойсвах грида "CancelOnExit" 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.