![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Текстовый редактор на основе TMemo или RichEdit
Fynjisx © (2009-09-24 23:21:00)Привет Всем!
Хочу сделать что-то наподобие текстового редактора. в котором должно быть осуществлено следующее:
Каждая строка логически должна быть разделена на две колонки. Значения в первой колонке(или иными словами в первой части строки) формирует программа. А текст "второй колонки" (второй части строки), формируется пользователем. При этом он(пользователь) не имеет права редактировать текст в первой колонке(а в лучше случае не имеет туда доступа).
После того как пользователь напишет свой текст в разрешенном для него месте, а это как я уже объяснил -вторая часть строки, он нажимает на Enter. При это программа переходит на вторую строку, также формирует её начальную часть и переводит курсор на свою вторую часть, в которой может писать пользователь...
Подскажите как сделать. Использовал CaretPos но он как то двояко показывает позиции.
Заранее благодарю..
Vitaliy_____ (2009-09-28 09:34:00) [1]Если использовать 2 мемо, то там будет сложность с синхронной прокруткой (хотя как это сделать темы были).
Как вариант, чем не устраивает СтрингГрид? Запретить редактирование 1-го столбца и писать во втором... Можно и с оформлением поиграться и прокрутка будет. Перекинуть фокус тоже не так сложно при нажатии enter...
Германн (2009-09-28 04:07:00) [2]
> Каждая строка логически должна быть разделена на две колонки.
> Значения в первой колонке(или иными словами в первой части
> строки) формирует программа. А текст "второй колонки" (второй
> части строки), формируется пользователем. При этом он(пользователь)
> не имеет права редактировать текст в первой колонке(а в
> лучше случае не имеет туда доступа).
Что-то это мне напоминает...
TValueListEditor may be?
Сергей М. (2009-09-27 18:05:00) [3]А где и в каком виде все это редактируемое хозяйство будет храниться после завершения работы программы ?
Fynjisx (2009-09-26 23:08:00) [4]
> В столбце каждой строки не более 1 мбайта ?И все эти мегабайты
> должны быть одновременно видны редактирующему ?
ладно, примерно около 20строк будет видеть редактирующий, а всего строк думаю не более 50. Будет предусмотрен для этих целей скролл.
Омлет (2009-09-25 19:39:00) [5]> Fynjisx (25.09.09 17:29) [5]
http://www.soft-gems.net/index.php?option=com_content&task=view&id=12&Itemid=33
Сергей М. (2009-09-25 18:35:00) [6]
> Максимальная длина текста у меня не более 1МегаБайт
В столбце каждой строки не более 1 мбайта ?
И все эти мегабайты должны быть одновременно видны редактирующему ?
Чума)
Fynjisx (2009-09-25 17:30:00) [7]
> И какова должна быть максимально допустимая длина текста
> в записях в каждой из колонок
Максимальная длина текста у меня не более 1МегаБайт
Fynjisx (2009-09-25 17:29:00) [8]
> А не проще ли взять нормальный VTV и не мучиться?
А что такое VTV???
Anatoly Podgoretsky (2009-09-25 13:12:00) [9]2 гига строк и 2 гб в сумме на все
Сергей М. (2009-09-25 11:19:00) [10]И какова должна быть максимально допустимая длина текста в записях в каждой из колонок ?
Омлет (2009-09-25 11:00:00) [11]А не проще ли взять нормальный VTV и не мучиться?
{RASkov} (2009-09-25 00:26:00) [12]Использовать два ТМемо левый заполнять программно ридонли ему тру, а правый пользователю...
что бы убрать границу между ними можно сделать примерно так:
object Panel1: TPanel
Left = 16
Top = 16
Width = 300
Height = 200
BevelOuter = bvLowered
BevelWidth = 2
Caption = 'Panel1'
TabOrder = 0
object Memo1: TMemo
Left = 2
Top = 2
Width = 59
Height = 196
Align = alLeft
BorderStyle = bsNone
Lines.Strings = (
'Memo1')
ReadOnly = True
TabOrder = 0
end
object Memo2: TMemo
Left = 61
Top = 2
Width = 237
Height = 196
Align = alClient
BorderStyle = bsNone
Lines.Strings = (
'Memo2')
TabOrder = 1
end
end