25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
||||||
1 | ||||||
OpenDialog и клики ;)04.09.2009, 22:10. Показов 5319. Ответов 18
Метки нет (Все метки)
Всем привет! подскажите пожалуйста, я вставил OpenDialog и после выбора файла, его текст заношу в MEMO!
Всё норм, НО! Файлы выбираються при ОДНОМ клике левой клавишей мышки. Я так понимаю, что я использую не то событие, да? Каккое событие правильно использовать? Или как сделать, чтобы было так как везде? Заранее спасибо, уважаемые форумчане Добавлено через 42 секунды
0
|
04.09.2009, 22:10 | |
Ответы с готовыми решениями:
18
OpenDialog or SaveDialog ListBox и OpenDialog Некорректная работа OpenDialog в win7 Как добавить прослушку в OpenDialog? |
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
||||||
04.09.2009, 23:05 | 2 | |||||
Да обработчик не тот. Кинь на форму кнопку, вот код ее обработчика
1
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
04.09.2009, 23:22 [ТС] | 3 |
Извините, но мне необходимо именно тем способом, которым я делал.
Это не моя прихоть, а лабораторная работа с интститута. Возможно ли так? Спасибо.
0
|
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
|
|
05.09.2009, 01:03 | 4 |
А Вы напишите полное задание и мы докажем Вашему преподавателю, что можно решать совершенно разными путями.
1
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
05.09.2009, 02:30 [ТС] | 5 |
Задание было просто в цикле прочитать файл, что в принципе я и сделал.
При этом я захотел добавить выбор файла, а не просто чтение стандартного, т.е. просто прописать к нему путь, но столкнулся с проблемой в OpenDialog ;( Воть... Если бы Вы подсказали как мне "вывернуться" теперь, я был бы безгранично признателен! )))
0
|
247 / 205 / 26
Регистрация: 03.02.2009
Сообщений: 785
|
||||||
05.09.2009, 09:15 | 6 | |||||
А какой полный код Вашей программы?
polivets предложил абсолютно верный вариант! А что в Вашей программе? 1. Вы запускаете opendialog (очевидно какой-то кнопкой). 2. Затем (если у Вас настроено) при выборе файла сразу срабатывает обработчик события OpenDialog1SelectionChange. А polivets предложил так: 1. Вы запускаете opendialog (очевидно какой-то кнопкой). 2. Затем выбираете любой файл в любом каталоге, щелкаете по нему два раза (или нажимаете ОК) и только после этого начинается работа с файлом: чтение, вывод и т.п. Что не устраивает? Добавлено через 2 минуты т.е. это будет делать что и Ваша программа, только после двойного щелчка по имени файла:
1
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
||||||
05.09.2009, 13:51 | 7 | |||||
Интересно было бы взглянуть на форму Вашего приложения. Как вы иницализируете процесс "в цикле прочитать файл". Обычно, это делается, как реакция на нажатие кнопки или пункта меню. Или в крайнем случае, в обработчике FormCreate. Вот туда - то и нужно вставить строку
rtfm, одним словом. Магическое слов - TOpenDialog. Может и найдешь, что тебе надо.
1
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
05.09.2009, 16:07 [ТС] | 8 |
Всё получилось!
Спасибо вам большое ))) Добавлено через 32 минуты Извините, а вы не подскажите как реализовать чтение файла по двойному клику (по файлу)... Я имею ввиду просто открытие файла с помощью моей программы. ???
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
|
05.09.2009, 16:30 | 9 |
Т.е. хотите ассоциировать, какой-либо тип файла (по расширению) с вашей программой? Например, как блокнот открывает файлы с расширением txt?
1
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
05.09.2009, 16:34 [ТС] | 10 |
Именно.
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
||||||
05.09.2009, 16:38 | 11 | |||||
3
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
05.09.2009, 16:54 [ТС] | 12 |
Спасибо большое - это действительно полезная инофрмация, однако меня больше итересовало как именно словить текст файла в Memo, если открыть файл с "Открыть с помощью..."!
Т.е. Я уже умею прочитать файл с помощью OpenDialog благодаря Вам, а вот как словить текст если я не программу свою открываю, а сам файл с помощью моей программы?
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
||||||
05.09.2009, 17:05 | 13 | |||||
Если Вы не выполните ассоциацию, то ОС не будет передавать вашей программе, путь к файлу, на который пользовал нажал.
Вот приблизительное использование в нем в кратце описано, как работать с командной строкой. Советую поискать на нашем форуме инфу по данной теме (Командная строка, ParamStr).
1
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
||||||
05.09.2009, 18:52 [ТС] | 14 | |||||
Ой... Подскажите пожалуйста последний раз!!!!
Вот я попробовал так сделать, получилось следующее: FileName ловит нормальный путь к файлу, т.е. все нормально после двойного щелчка по файлу в приложение передаёться адрес этого файла, НО почему то не может его прочитать, выдаёт ошибку I/O 6 - Что это и как с этим бороться?? Заранее спасибо!!! Добавлено через 43 минуты Вот ещё. Если файл пустой, то он нормально читаеться и даже сохраняеться, но если файл НЕ пустой, то возникает данная ошибка! Добавлено через 42 секунды
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,880
|
|||||||||||
05.09.2009, 19:47 | 15 | ||||||||||
Для меня осталось загадкой, что все же делает N6Click (хотя бы для себя пишите комментарии, а тем более, если Вы хотите, чтобы Ваш код кто-то понял), но предположу, что здесь происходит сохранение содержимого Memo1 в текстовый файл. Так вот, весь этот код можно заменить на
Ну а если, допустим, Вам нужно, обязательно в цикле сохранять, то
2
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
05.09.2009, 19:59 [ТС] | 16 |
Это понял. Так, а по открытию что?
Добавлено через 6 минут Спасибо большое. Всё получилось...
0
|
96 / 96 / 16
Регистрация: 28.01.2008
Сообщений: 426
|
||||||
28.10.2010, 17:43 | 17 | |||||
0
|
25 / 24 / 1
Регистрация: 18.08.2009
Сообщений: 126
|
|
28.10.2010, 18:22 [ТС] | 18 |
Прошло больше года и вот я снова здесь уже с достаточным багажом знаний! Спасибо большое всем кто мне год назад тут помогал!
MyProgram.Project - это всего лишь ключ. Его Вы можете заменить (только везде тогда) на свой, это роли не играет
1
|
96 / 96 / 16
Регистрация: 28.01.2008
Сообщений: 426
|
|
28.10.2010, 18:49 | 19 |
Пасиб, а то я подумал, что здесь MyProgram.Project будет выполнять определенные действия в моей программе, и будет зависеть от того, что там напишешь.
0
|
28.10.2010, 18:49 | |
28.10.2010, 18:49 | |
Помогаю со студенческими работами здесь
19
Компонент: свойство вызова OpenDialog Хочу сделать свой OpenDialog Что такое if opendialog.execute then showmessage(..) ? OpenDialog, SaveDialog, FontDialog, ColorDialog, PrintDialog Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |