Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2015, 17:05   #1
DuMaHc
 
Регистрация: 23.01.2015
Сообщений: 6
По умолчанию Помогите сократить действия c OpenDialog

Помогите сократить действия с OpenDialog, в моей программе сначала прописывается:
Код:
if OpenDialog1.Execute then
Edit1.Text:=OpenDialog1.FileName;
для открытия файла и указания пути файла в Edit1, но потом у меня открывается файл для дальнейшей выгрузки его в StringGrid, с помощью следующих команд:
Код:
if OpenDialog1.InitialDir = '' then
OpenDialog1.InitialDir := ExtractFilePath(Application.ExeName);
Тем самым окно с выбором файла открывается дважды, можно ли сделать так, чтобы и путь прописывался и файл выгружался в Excel после одного выбора файла???

Последний раз редактировалось Stilet; 24.01.2015 в 10:59.
DuMaHc вне форума Ответить с цитированием
Старый 23.01.2015, 17:18   #2
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
но потом у меня открывается файл для дальнейшей выгрузки его в StringGrid, с помощью следующих команд:
этими командами файл открыть не возможно.
lomastr_ вне форума Ответить с цитированием
Старый 23.01.2015, 17:25   #3
DuMaHc
 
Регистрация: 23.01.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
этими командами файл открыть не возможно.
Есть вот такой код программы при нажатии на кнопку, требуется сделать, чтобы окно выбора файла открывалось один раз.
[CODE]procedure TForm1.Button2Click(Sender: TObject);
var
ExApp, ExBook, ExSheet : OleVariant;
V : Variant;
C, R, Col, Col1, Col2, Row, Row1, Row2 : Integer;
S, FileName : String;
Sg : TStringGrid;
begin
if OpenDialog1.Execute then
Edit1.Text:=OpenDialog1.FileName;

if O

Последний раз редактировалось Stilet; 24.01.2015 в 11:07.
DuMaHc вне форума Ответить с цитированием
Старый 23.01.2015, 17:45   #4
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

зачем вы 2 раза вызываете диалог - OpenDialog1.Execute?
lomastr_ вне форума Ответить с цитированием
Старый 23.01.2015, 17:50   #5
DuMaHc
 
Регистрация: 23.01.2015
Сообщений: 6
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
зачем вы 2 раза вызываете диалог - OpenDialog1.Execute?
в первом случае, прописывается путь к файлу в Edit1, во втором случае для проверки существует ли файл с таким именем.
DuMaHc вне форума Ответить с цитированием
Старый 23.01.2015, 19:02   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

если файл выбран (первый вызов), то он существует. И зачем его проверять еще раз(второй вызов)?
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 24.01.2015, 01:40   #7
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

Цитата:
Сообщение от DuMaHc Посмотреть сообщение
в первом случае, прописывается путь к файлу в Edit1
И зачем что-то прописывается в Edit1, если потом это прописанное нигде не используется?
<ТЕЛЕПАТОР ВКЛ>
Если, например, при старте программы или в какой-то иной момент нужно выбрать каталог/папку из которой будут браться файлы для некоей обработки, то лучше воспользоваться не компонентом TOpenDialog, а функцией SelectDirectory
<ТЕЛЕПАТОР ВЫКЛ>
northener вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenDialog - загрузка текстового документа в Мемо. Lazarus. (процедура косячит, помогите исправить пожалуйста!!!!) Екатерина 123 Lazarus, Free Pascal, CodeTyphon 32 31.05.2014 17:48
сократить код kostan3 Visual C++ 0 15.03.2013 14:08
сократить код kostan3 Паскаль, Turbo Pascal, PascalABC.NET 2 17.02.2013 17:24
Сократить Формулу Adrenalin_N Microsoft Office Excel 2 03.07.2011 17:28
Помогите с OpenDialog! Relrin Общие вопросы Delphi 7 17.01.2008 21:53