Home
Top.Mail.Ru Yandeks.Metrika
Forum: "Main";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Down

How to work with TInplaceEdit Find similar branches


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
Спасибо. Попробую сделать так..



Pages: 1 whole branch

Forum: "Main";
Current archive: 2002.01.08;
Download: [xml.tar.bz2];

Top









Memory: 0.84 MB
Time: 0.046 c
1-22084
Mikhalyov Dmitry
2001-12-19 14:53
2002.01.08
Event lock


14-22406
VEG
2001-11-10 12:56
2002.01.08
It happened here with me different ...


14-22391
Serg5
2001-11-10 10:29
2002.01.08
Who is not lazy, go to http://forum.ru-board.com/, it really hangs, or IP filtering, they won't let me.


4-22473
amamed_3071
2001-11-02 13:46
2002.01.08
Epson Printer commands


14-22347
roman001
2001-11-06 18:09
2002.01.08
Hosting





afrikaans albanian Arabic armenian azerbaijani basque belarusian bulgarian catalan Chinese (Simplified) Chinese (Traditional) croatian Czech danish Dutch English estonian filipino finnish French
galician georgian German greek haitian Creole hebrew Hindi hungarian icelandic indonesian Irish italian japanese Korean latvian lithuanian macedonian malay maltese norwegian
persian polish portuguese Romanian russian serbian slovak Slovenian Español swahili Swedish thai turkish Ukrainian urdu vietnamese welsh yiddish bengali bosnian
cebuano Esperanto gujarati hausa hmong igbo javanese kannada khmer lao latin maori marathi mongolian nepali punjabi somali tamil telugu yoruba
zulu
English French German Italian Portuguese Russian Spanish