Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.10;
Скачать: CL | DM;

Вниз

Как выделить часть текста в ячейке DBGrida?   Найти похожие ветки 

 
Таня   (2002-09-20 10:17) [0]

Здравствуйте! Пытаюсь сделать автоподстановку подходящих значений при наборе начальных символов в lookup поле DBGrida. Как найти, вывести - понятно; непонятно, как выделить предлагаемую часть значения. Я правильно понимаю, что нужно вычислять координаты выделямого прямоугольника и устанавливать на него фокус? Каким образом тогда получить координаты текущей ячейки? Может есть путь попроще? Подскажите,пожалуйста!

Я знаю, что эта вещь реализована в DBGridEh, но уменя его пока нет, других подходящих компонент я не нашла.

Помогите, плз!


 
ЮЮ ©   (2002-09-20 10:30) [1]

>как выделить предлагаемую часть значения
SelStart,SelLength


 
ЮЮ ©   (2002-09-20 10:32) [2]

Нет не пойдёт :-(


 
Prooksius ©   (2002-09-20 10:35) [3]

Эти начальные символы ты вводишь в TEdit или наследник от него?
Если да, то тебе нужен Edit1.SelStart/SelLength


 
ЮЮ ©   (2002-09-20 10:44) [4]

Только каретка будет в конце выделенного блока. :-(


 
Таня   (2002-09-20 10:47) [5]

To Prooksius:
Нет, вводить надо прямо в ячейку DBGrida. Про SelStart/SelLength знаю, они только для TEdit и ComboBox - не проходит


 
ЮЮ ©   (2002-09-20 10:53) [6]

>Нет, вводить надо прямо в ячейку DBGrida
При редактировании в ячейках грида на самом деле используется InplaceEditor,в сам грид ничего не вводится. Скачай-ка всё-таки EhLib и посмотри как там всё устроено.


 
Johnmen ©   (2002-09-20 10:53) [7]

Именно так ЮЮ © (20.09.02 10:30)


 
Johnmen ©   (2002-09-20 10:59) [8]

...а именно :
with DBGrid1.InplaceEditor do begin;
SelStart:=0; SelLength:=Length(FindStr);
...



 
Таня   (2002-09-20 11:10) [9]

To Johnmen
Было бы замечательно, но у DBGrid я не нашла свойства InplaceEditor. Видимо, я чего-то не понимаю :(


 
Wolf226 ©   (2002-09-20 11:28) [10]

InplaceEditor - protected.
Пиши свой компонент наследник TDBGrid (или TCustomDBGrid)
и получишь к нему доступ.


 
ЮЮ ©   (2002-09-20 11:31) [11]

TCustomGrid
protected
property InplaceEditor: TInplaceEdit read FInplaceEdit;

Естественно, оно protected, т.к. редактирование ячеек - это "внутреннее" дело Grida, а чтобы Grid должным образом поступал и пишут Наследника. Поэтому и советую обратиться к исходникам DBGridEh и в нём добиваться нужной функциональности.


 
Johnmen ©   (2002-09-20 11:34) [12]

Виноват...Доступ к InplaceEditor реализован в TRxDBGrid...



 
Johnmen ©   (2002-09-20 11:42) [13]

type
TMyDBGrid = class(TDBGrid);

...

TMyDBGrid(DBGrid1).InplaceEditor



 
Таня   (2002-09-20 11:44) [14]

To ЮЮ
> советую обратиться к исходникам DBGridEh и в нём добиваться нужной функциональности
Да, видимо, это наиболее разумный вариант. Не подскажете, где их можно быстро взять?


 
ЮЮ ©   (2002-09-20 11:50) [15]

У автора:
http://www.farpost.com/personal/dmitryb/RUS/downloads.htm


 
Таня   (2002-09-20 11:54) [16]

Спасибо всем большое!



Страницы: 1 вся ветка

Текущий архив: 2002.10.10;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.018 c
14-32015
Asteroid
2002-09-16 18:09
2002.10.10
А кто такие


4-32089
Карлсон
2002-08-26 17:07
2002.10.10
Чаво я не так делаю?


1-31808
Юра
2002-10-02 11:58
2002.10.10
Скролинг формы колесиком мыши


3-31606
MsGuns
2002-09-18 16:19
2002.10.10
Как определить последняя (первая) ли текущая запись DS ?


1-31751
XED
2002-09-27 21:12
2002.10.10
Пароли к ОутГлюку.