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

Вниз

Как работать с TInplaceEdit   Найти похожие ветки 

 
Tosov ©   (2001-12-15 10:43) [0]

Как "подключить" его к StringGrid и вообще работать с ним (если можно маленький пример)


 
Tosov ©   (2001-12-15 22:10) [1]

И еще - в хелпе написано, что есть TCustomGrid.InplaceEditor TCustomGrid.CreateEditor и др. А е его потомке TStringGrid их нет.
Помогите разобраться с InplaceEdit.Очень надо !!!


 
Tosov ©   (2001-12-16 00:10) [2]

Очень надо !!!


 
Suntechnic ©   (2001-12-16 05:28) [3]

Ты лучше скажи, ты свой компонент на базе TStringGrid или TCustomGrid пишешь или просто добраться хочешь? Во втором случае никак. Надо наследоваться...


 
Suntechnic ©   (2001-12-16 05:47) [4]

Извини, я сразу не нашёл тот вопрос, который ты первый раз задавал. Теперь по сути...

У TCustomGrid есть метод CreateEditor. Тебе надо его переопределить. Для того чтобы получить полный контроль над TInplaceEdit тебе также придётся от него отнаследоваться. Т.е. написать свой TInplaceEdit например TInplaceEditEx А в переопределённом методе CreateEditor создавай уже новый TInplaceEditEx.


 
Tosov ©   (2001-12-16 07:09) [5]

Я пишу от TStringGrid (просто у TCustomGrid я нашел св-во InplaceEditor а у StringGrid"a не нашел. И как в таком случае мне с ним работать (у TInplaceEdit.Grid только для чтения :( )


 
Suntechnic ©   (2001-12-16 08:19) [6]

Теперь я уже не понял... Ты про наследование когда-нибудь слыхал? TStringGrid наследник от TCustomGrid, а это значит, что всё то, что есть у TCustomGrid присутствует у TStringGrid и будет присутствовать у класса, который ты породишь от TStringGrid...


 
Tosov ©   (2001-12-16 09:13) [7]

TStringGrid наследник от TCustomGrid, а это значит, что всё то, что есть у TCustomGrid присутствует у TStringGrid и будет присутствовать у класса, который ты породишь от TStringGrid...
Я про то-же. Но где у TStringGrid InplaceEditor я не обнаружил.
Насколько я понял, ты предлагаешь следующее:

type
TMyEdit=class(TInplaceEdit)
public
function Что_то_наподобие_onEndEdit(llll);override;
end;

Type
TMyGrid=class(TStringGrid)
public
Editor:TMyEdit;
CreateEditor;override;
end;

procedure TMyGrid.CreateEditor;
begin
Editor:=TMyEdit.Create(nil);
end;

P.S. У TInplaceEdit"а Events нет :( В общем я уже запутался

С начала.. На форме есть TMyGrid (от TStringGrid)
1.юзер начинает редактировать ячейку -> Данные передаются в Editor и обрабатываются там
2.юзер завершает редактирование -> Данные из Editor"a передаются в редактируемую ячейку
3. Все это делается "автоматически" (мне надо создать Editor и "прицепить" его к определенному компоненту.
(это как я понимаю. если ошибся-поправь..)

? Как сказать Editor"у что твой грид =MyGird1 или как в TMyGrid создать Editor ?
? У TInplaceEdit в хелпе нет ни функций ни событий связанных с окончанием редактирования (может плохо хелп читал??)?


 
Suntechnic ©   (2001-12-16 18:58) [8]

>Tosov © (16.12.01 09:13)
TMyGrid=class(TStringGrid)
public
Editor:TMyEdit;!!!!!!!!!Лишнее

Всё верно за исключением вот этой строчки. Editor и так существует, просто тебе надо положить туда свой.

И создавать вот так:
function TMyGrid.CreateEditor: TMyEdit;
begin
Result := TMyEdit.Create(Self);
end;


>У TInplaceEdit в хелпе нет ни функций ни событий связанных с окончанием >редактирования
А что тебе мешает их написать? Ведь ты же создаешь свой класс. Это в любом случае окно, а окно всегда получает фокус и теряет его.
...конкретно с началом и окончанием редактирования в InplaceEditor я не сталкивался так что могу многих камней не видеть, но копать надо именно здесь...


 
Tosov ©   (2001-12-16 22:55) [9]

Suntechnic
Спасибо. Попробую сделать так..



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
1-22021
Socol
2001-12-18 08:54
2002.01.08
Загрузка файла!


1-22137
AlexandrH_
2001-12-20 08:06
2002.01.08
Как в StringGride управлять фокусом.


3-21918
SVS
2001-12-04 13:11
2002.01.08
заполнение OleContainer из BlobField


1-21999
elephant
2001-12-15 02:02
2002.01.08
C++ or Delphi


3-21930
Roman55
2001-12-04 16:37
2002.01.08
BDE