Вячеслав, а в Excel из тоже куча, и что -- спрашивают? Я плюнул на первый способ инициализации и сделал как в StingTable -- через StrDelimiter'ы. Очень здорово получилось -- один текстовый файл инициирует всю сетку значений. Думаю на этом остановиться -- все параметры будут инициализироваться своим персональным StrList'ом без цикла (но возможнось циклической записи останется).
Этот топик читают: Гость
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): а в Excel из тоже куча, и что -- спрашиваютПовторюсь все они должны быть редактируемыми. nesco писал(а): Очень здорово получилось -- один текстовый файл инициирует всю сетку значенийНе очень вообще понимаю зачем он(StrList) нужен Если у тебя в каждой ячейке будет Edit .Ты просто загружаешь туда данные из файла. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав писал(а): Ты просто загружаешь туда данные из файлаКуда? В каждый Edit? А как ты себе это представляешь? У тебя обвязка Grida не хилая получится -- пробежаться по всем строкам и столбцам и занести в ячейки (почему я и отказался от такого метода инициализации). Не забывай, что внешние методы всегда медленнее внутренних при наличии линков. Давай так. Я сделаю, а потом посмотрим, что из этого получится. PS: И не забывай, что Дима Матвеев писал Т.к сетка, все таки предназначена для отображения
данных, а редакторование - это функционально. |
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Куда? В каждый Edit? А как ты себе это представляешьВ цикле. nesco писал(а): Не забывай, что внешние методы всегда медленнее внутренних Так у тебя получится двойная загрузка файл-StrList-Editда ещё вставка разделителей. nesco писал(а): Я сделаю, а потом посмотрим, что из этого получитсяДа конечно . nesco писал(а): И не забывай, что Дима Матвеев писалДа для отображения данных из БД. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав писал(а): Так у тебя получится двойная загрузка файл-StrList-Editда ещё вставка разделителей.[size=-2]------ Добавлено в 23:49 Да, кстати, при таком методе на базе StrTabl'a можно будет сделать конвертор данных в Grid. |
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Но я до сих пор не пойму, откуда ты хочешь брать внешние данные?Из файла всё из файла 1)Загружаешь таблицу из файла 2)Кликаешь на ячейке - появляется Edit загружаешь Edit из файла(при первом клике определяешь номер ячейки (при структуре файла с произвольным доступом это элементарно по номеру ячейки) 100 символов это милисекундное дело. При чём если файл открыт то головки диска находятся именно на нём и второй клик просто переместит их на нужную позицию.И они будут там находится до закрытия файла(режим редактирования который включаем при первом клике на ячейке). 3)редактируешь 4)Жмёшь сохранить.Причём сохранить можно как всю таблицу так и только изменённые данные. изменённые данные. nesco писал(а): Да, кстати, при таком методе на базе StrTabl'a можно будет сделать конвертор данных в Grid.Ну конвертор можно сделать куда угодно из чего угодно если знать структуру. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав, это с одним Edit'ом, а если их сотни или тысячи, на каждый кликать что ли? А где ты у Edit'a загрузку из файла видел? Я такой мути даже в Exel'e не встречал. Ну и придумал же ты? Я вообще не пойму такого способа доступа. Еще раз -- зачем загружать Edit из файла, когда у тебя есть комбо? Edit нужен просто для редактирования текущей ячейки, больше ни для чего. ИМХО.
[size=-2]------ Добавлено в 01:04 Если тебе нужен такой способ файл-рекорда, то найди код для портации. Тогда будем пытаться его воткнуть. |
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Еще раз -- зачем загружать Edit из файлаДа есть какая то непонятка . Где хранятся данные если их загрузить из файла что бы они отобразились в таблице Вот оттуда загружаем их в Edit для редактирования. Но основная мысль в том чтобы читать и сохранять только необходимые(изменённые) в данный момент данные, а не всю таблицу. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав писал(а): Но основная мысль в том чтобы читать и сохранять только необходимые(изменённые) в данный момент данные, а не всю таблицуНо в ячейках что-то должно отображаться, а значит это "что-то" уже висит в памяти. Отредактировал, а оно уже изменило память. Ну никак это на быстродействие не повлияет. С загрузкой, тут надо думать, какой метод быстрее Можно пойти путем, что бы грузить только видимую область, но это сложновато реализовать Но если для загрузки применить системный поток, то можно редактировать ячейки, а оно будет ее догружать в невидимой области, не влияя на твою работу. Я так уже делал -- работало прекрасно. |
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Но если для загрузки применить системный поток, то можно редактировать ячейки, а оно будет ее догружать в невидимой области, не влияя на твою работу.Отлично. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав, Насчет автонумерации. Устроит такой вариант -- если нет списка титлов, то будет происходить автонумерация титлов, как в оригинале?
|
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Устроит такой вариант Да конечно. Ещё есть вопрос ,а можно там сделать несколько заголовков. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
Вячеслав писал(а): Ещё есть вопрос ,а можно там сделать несколько заголовковЕсли в два ряда, то -- нельзя. А так меняй имена как хочешь. |
|||
карма: 22 |
|
Ответов: 3655
Рейтинг: 69
|
|||
nesco писал(а): Если в два рядада я как раз про это. |
|||
карма: 0 |
|
Разработчик
Ответов: 26164
Рейтинг: 2127
|
|||
nesco писал(а): Если в два рядаНо это уже -- извращение. Пока делаем то, что можно сделать. Потом, будем думать. Я и так уже повис конкретно, от избытка информации. Пока привожу в порядок то, что уже сделано. |
|||
карма: 22 |
|