Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Вниз

saveDialog OpenDialog   Найти похожие ветки 

 
appendix ©   (2004-09-18 19:41) [0]

Есть две аналогичных процедуры для чтения и для записи через диалог.

d:= ExtractFilePath(Application.ExeName);
 SetCurrentDirectory( PChar( d+"Save"));  
 with SaveDialog1 do
 begin
   InitialDir:= d+"Save";
...

d:= ExtractFilePath(Application.ExeName);
 SetCurrentDirectory( PChar( d+"Save"));
 with OpenDialog1 do
 begin
   InitialDir:=d+"Save";
...

Когда открывается SaveDialog, то директория всегда d+"Save" даже если я записывал файл в другой каталог.
А вот OpenDialog почему-то открывает директорию в которой я впоследний раз брал файл для чтения. То есть не обязательно d+"Save".

Как с этим бороться?
Надо чтоб OpenDialog всегда открывался с директорией d+"Save".


 
GuAV ©   (2004-09-18 21:58) [1]

FileName:="" ?


 
Гаврила ©   (2004-09-19 01:23) [2]

ТАм есть такой параметр, типа InitialDir


 
Германн ©   (2004-09-19 01:36) [3]

Поясню ответ GuAV ©   (18.09.04 21:58) [1]

Главным для определения директории является свойство FileName. И если Вы ранее уже "открывали директорию, в которой я в последний раз брал файл для чтения", то естественно программа плюет на InitialDir, поскольку FileName - содержит (по определению) полный  путь к файлу.
Решение простое - перед вызовом OpenDialog.Execute  присваивайте свойству FileName, то что Вам нужно. "*.*" - например.


 
appendix ©   (2004-09-19 13:36) [4]

Да с FileName:="*.*" работает как надо.

Я почему-то думал, что нужно использовать
SetCurrentDirectory( PChar( d+"Save"));
Или её вообще можно выбросить?


 
Германн ©   (2004-09-20 02:02) [5]

Можно выбросить её. Но лучше сначала понять, что есть CurrentDirectory, как ее можно установить, кто и что её устанавливает и как это все отражается на работе стандартных Дельфийских компонент(TSaveDialog, TOpenDialog)!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
14-1094888235
Piter
2004-09-11 11:37
2004.10.03
Какая температура в ванной?


1-1095228689
Fedia
2004-09-15 10:11
2004.10.03
Синхронизация в потоке


14-1095006092
saNat
2004-09-12 20:21
2004.10.03
Rave Report


8-1088862420
Tahion2
2004-07-03 17:47
2004.10.03
Как Разбить иконку на каналы (выделить Альфа-канал)


14-1095021971
Knight
2004-09-13 00:46
2004.10.03
Вопрос к тем, кто ходит в церковь...





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 Spanish 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
Английский Французский Немецкий Итальянский Португальский Русский Испанский