![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как по нажатию кнопки вставить символ в ElTreeInplaceEdit? [D7, WinXP]
Dr. Andrew © (2007-08-08 10:32:00)Доброго дня, Мастера! Помогите с проблемой вставить после нажатия на кнопку символа в ElTreeInplaceEdit. Приведенный код вставляет символ в ячейку таблицы TElXThree, но при этом сам редактор в ячейке неактивный. Как сделать его активным по нажатию кнопки и так, чтобы он оставался активным пока есть необходимость в редактировании данной (выделенной) ячейки, то есть можно было вставлять символ(или символы). Я использую компоненты ElPack. Всем спасибо!
// inplace to the cell of unicode symbol!
procedure TForm1.ElGraphicButton1Click(Sender: TObject);
var ws : WideString;
begin
if Assigned(ElXTree1.Selected) then
begin
ElXTree1.Items.BeginUpdate;
if ElTreeInplaceEdit1.Item <> nil then
begin
ElXTree1.EditItem(ElXTree1.Selected, ElXTree1.Selected.Cells.Col);
// ws := ElTreeInplaceEdit1.Editor.Lines.Text; <- так не работает
// ElTreeInplaceEdit1.Editor.Lines.Text := ws + WideChar($00F4); <- так не работает
ws := TElXTreeItem(ElTreeInplaceEdit1.Item).Cells[ElXTree1.Selected.Cells.Col].Text;
TElXTreeItem(ElTreeInplaceEdit1.Item).Cells[ElXTree1.Selected.Cells.Col].Text := ws + WideChar($00F4);
ElXTree1.EndEdit(False);
end;
ElXTree1.Items.EndUpdate;
end;
end;
Dr. Andrew (2007-08-09 08:44:00) [1]Мастера может есть у кого-нибудь еще идеи по решению затронутой проблемы? Спасибо!
Dr. Andrew (2007-08-08 17:27:00) [2]У меня возникла одна идея. А можно как-то программно через API загнать символ в редактор, например ElTreeInplaceEdit1.Editor.Perform(??????, 0, Ord(WideChar($00F4))) так. Только я не знаком хорошо с этими функциями. Подскажите если знаете как правильно е записать или нечто подобное. Спасибо
Lacmus (2007-08-08 17:11:00) [3]Dr. Andrew (08.08.07 10:32)
"Приведенный код вставляет символ в ячейку таблицы TElXThree" - символ в ячейке не появляется.
Может быть использовать TElTreeInplaceButtonEdit, или не подходит ? (надо много кнопок)
Dr. Andrew (2007-08-08 17:03:00) [4]Lacmus. Извините, но я не понял Вашего сообщения последнего
Lacmus (2007-08-08 16:36:00) [5]Пример из Dr. Andrew (08.08.07 10:32) работает ? (текст не изменяется)
Dr. Andrew (2007-08-08 16:31:00) [6]Да у меня еще одна особенность - свойство выделения строки активно! И при этом сам редактор в момент ввода символа исчезает, но при этом символ вводится. Но, вводится он просто в ячейку а не работаешь с редактором непосредственно. Может еще есть какие-то идеи?
Dr. Andrew (2007-08-08 16:29:00) [7]Спасибо за пример, но все же остается проблемка в том, что после ввода символа и перед вводом, например следующего символа, поле редактора закрывает "синее" выделение (оно как бы мигает). Вот как бы оставить фокус редактора активным и запретить выделять его после ввода символа? Спасибо!
Lacmus (2007-08-08 16:02:00) [8]Пример похожего характера
procedure TForm21.Button2Click(Sender: TObject);
begin
if ElXTree1.Selected <> nil then begin
ElXTree1.EditItem(ElXTree1.Selected, ElXTree1.Selected.Cells.Col);
with ElTreeInplaceEdit1.Editor do
Text := Text + '1';
ElXTree1.EndEdit(False)
end
end;
Dr. Andrew (2007-08-08 14:21:00) [9]Мастера, пожалуйста, кто-то то может подсказать как решить мою проблему?
Dr. Andrew (2007-08-08 10:34:00) [10]Буду Всем очень признателени за любые идеи или маленький пример, даже похожего характера. Спасибо!