Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

При открытии файла через OpenDialog имя файла не сохраняется


snake-as ©   (2009-02-05 06:20:00) 

Здравствуйте. Такая проблема: Есть Edit1, OpenDialog1. При нажатии на кнопке эдит получает имя файла
if OpenDialog1.Execute then
  Edit1.Text := OpenDialog1.Filename

Затем после нажатия определенной кнопки, я сохраняю значение в файл структуры, в которой есть свойство типа ShortString

Record1.str := Edit1.Text
WriteToFile

При открытии я читаю это значение
ReadFromFile
Edit1.TExt := Record1.str
Но эдит оказывается пустой. Причем при отладке четко видно, что он читает то, что нужно и записывает тоже. А когда вручную текст вводишь, без Опендиалога, то сохранение проходит успешно. Подскажите, пожалуйста, в чем проблема.


Плохиш   (2009-02-05 13:46:00) [1]


> snake-as ©   (05.02.09 11:23) [9]

Тут, как говорят на автомобильных форумах, надо сменить прокладку.


clickmaker   (2009-02-05 11:30:00) [2]

> Это просто пример. У меня там это свойство как-то по-другому
> называется

то есть даже не помнишь как?
пока не выложишь сюда нормальныйкод, именно тот, который отлаживаешь, а не по памяти, тебе тут вряд ли помогут


Anatoly Podgoretsky   (2009-02-05 11:28:00) [3]

> snake-as  (05.02.2009 11:23:09)  [9]

А зачем нам обсуждать какой то посторонний код, который оказывается просто взят из головы и не имеет отношения к проблеме?


snake-as   (2009-02-05 11:23:00) [4]

Это просто пример. У меня там это свойство как-то по-другому называется. Это у меня второй раз уже такая проблема. Я посмотрел в нете, не у одного меня. Только нормального пояснения никто так и не дал на других сайтах.


anonims   (2009-02-05 10:58:00) [5]

в том смысле что в свой record добавить поле недостающего типа string|string[200] выполнить над каждым полем  одинаковые операции :=Edit1.Text посмотреть отладчиком и т.п. и понять результаты наблюдений


Anatoly Podgoretsky   (2009-02-05 10:58:00) [6]

Кстати, а зачем ты смотришь Record1.Filename, а пишешь в Record1.Str?


Anatoly Podgoretsky   (2009-02-05 10:57:00) [7]

Значит далее присваивается Edit1.Text := '';
Отладчик у тебя вроде бы есть, почему бы не посмотреть далее, где оно теряется.


snake-as   (2009-02-05 10:46:00) [8]

Нет, ошибки нет, на 200 % уверен. Когда в ReadFromFile смотрю через отладчик, там есть строка
Edit1.Text := Record1.Filename;
Причем FileName здесь равен требуемому значению. А после присваивания все равно пусто.


Медвежонок Пятачок   (2009-02-05 09:09:00) [9]

Ошибка внутри ReadFromFile и WriteToFile


snake-as   (2009-02-05 09:01:00) [10]

В каком смысле?


anonims   (2009-02-05 08:24:00) [11]

посмотри как будет сохранено каждое поле, сделай выводы
trec=record
 str: string[200];
 strx: string;
end;


snake-as   (2009-02-05 06:40:00) [12]

Через ини файл нормально сохраняется. И все же, в чем проблема, не подскажете? Очень интересно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо