Главная страница
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.016 c
4-32062
Степан
2002-08-23 13:33
2002.10.10
Список открытых окон


14-32019
ikivio
2002-09-14 06:30
2002.10.10
Хранение информации


8-31907
Subfire
2002-06-11 14:04
2002.10.10
А TImage в Delphi6 глючный :)


4-32090
vulsims
2002-08-25 12:17
2002.10.10
Как прочитать путь к файлу из *.lnk (ярлыка)


1-31763
StarCon
2002-10-01 14:31
2002.10.10
логика разбора таблиц