| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > продцедура обработки события в Delphi 2010 |
| Автор: supervladislav 19.9.2012, 16:04 |
| Вставил в своё приложение две кнопки SaveFileDialog и OpenFileDialog ,кликаю по ним ,чтобы создать продцедуру , а Delphi открывает само окно выбора/сохранения файлов , данная функция в Delphi 7 была доступна по двойному щелчку на эллемент формы. Кто пользуется Delphi 2010 подскажите , как вызвать продцедуру обработки в ответ на событие? |
| Автор: Данкинг 19.9.2012, 16:15 | ||
Да и в D7 аналогично. |
| Автор: supervladislav 19.9.2012, 17:11 |
| northener, Данкинг, событие срабатывающее при выборе файла. |
| Автор: northener 19.9.2012, 17:24 |
Такого события нет и никогда не было. О том выбрал ли пользователь файл или не выбрал свидетельствует результат возвращенный в методе Execute. |
| Автор: Данкинг 19.9.2012, 17:43 |
| OpenDialog.Execute оно называется. |
| Автор: Чучмек 20.9.2012, 20:09 |
А какже OnCanClose??? Назначается как и все. В ObjectInspector на вкладке Events двойным щелчком по соответствующему полю. |
| Автор: supervladislav 20.9.2012, 20:12 |
| northener, Данкинг. Я имел ввиду ,как можно сгенерировать продцедуру ,так чтобы она появилась в коде моего модуля и в типах. В D7 это было очень просто- двойной счелчок мыши и всё. |
| Автор: Данкинг 20.9.2012, 20:22 |
| If opendialog.execute then... |
| Автор: northener 20.9.2012, 21:06 |
Ты ошибаешься. Такого не было никогда. Вот для TButton, например, так и есть, потому что у него есть событие OnClick. А для TOpenDialog, TSaveDialog события OnClick нет и быть не может. Ибо они оба компоненты невизуальные. Добавлено через 48 секунд Имхо автору нужно не оно. |
| Автор: northener 21.9.2012, 02:38 |
И кстати. Я просто не понимаю зачем это событие в TOpenDialog/TSaveDialog вообще нужно? |
| Автор: supervladislav 21.9.2012, 10:12 |
| northener, не очень просто догнал можно ли сделать открытие файлового диалога через tbottom? |
| Автор: Чучмек 21.9.2012, 10:51 | ||||||||
http://docwiki.embarcadero.com/Libraries/XE2/en/Vcl.Dialogs.TOpenDialog.OnCanClose
|
| Автор: Данкинг 21.9.2012, 10:52 | ||
TButton т.е.?
|
| Автор: northener 22.9.2012, 00:49 | ||
Вот именно это и не понимаю. Закрытие диалогового окна "крестиком", имхо всегда по определению тождественно нажатию кнопки "Cancel". |
| Автор: bems 22.9.2012, 01:38 | ||
|
| Автор: northener 22.9.2012, 02:51 |
bems, какой к лешему "выбраный файл" и его "допустимость", если пользователь отказался его выбирать? И даже вообще отказался выбирать какой-либо файл? |
| Автор: bems 22.9.2012, 02:58 |
| Прочитай хелп уже. Там англицким по белому написано что событие возникает при закрытии диалога без отмены |
| Автор: supervladislav 22.9.2012, 18:44 | ||
| Данкинг, Мне не совсем ясно было ,какой вобще командой открыть окно,
А скажите сам контроль надо перетаскивать , а если надо то как его можно скрыть? |
| Автор: supervladislav 22.9.2012, 19:07 | ||
| northener, Зы ,а как проверить булевое значение вот тут Мне прежде чем появляется путь к файлу сначала открывается окно добавления файла ,я его выбираю ,потом как только я выбираю файл мне открывается ещё одно окно.
|
| Автор: Данкинг 22.9.2012, 19:07 | ||||
Кладёшь его на форму как обычно. Но при работе программы его не видно. Добавлено через 44 секунды
Ещё раз. |
| Автор: supervladislav 22.9.2012, 19:48 | ||||
Данкинг, да ещё раз , после того как я убрал
сейчас вобще всё отрубилосЬ вроде как. Checking project dependencies... Compiling Project2.dproj (Debug, Win32) dcc command line for "Project2.dpr" Failed Elapsed time: 00:00:00.4 А как понять в какой строке ошибка?
Добавлено через 8 минут и 24 секунды Данкинг, northener, OpenDialog надо объявлять в типах пока незабыл |
| Автор: Данкинг 22.9.2012, 20:05 |
Просто кидаешь его как компонент, больше с ним ничего делать не требуется. |
| Автор: supervladislav 22.9.2012, 20:12 |
| Данкинг, о не оно было объявлено как компонент всё впорядке. Так у когонибудь есть какиенибудь соображения на этот счёт. Как кстате скрыть саму кнопку OpenDialog Скрыть? При условии ,что я буду использовать свою кнопку типа Tbottom. |
| Автор: northener 23.9.2012, 00:04 | ||
Есть. Объясни простыми человеческими словами свою задачу. Не проблему, а именно задачу! Зачем тебе нужно вызывать диалог открытия/записи файла? Добавлено через 14 минут и 53 секунды Прочитал. Теперь понятно для чего это событие "нужно". Но в своих проектах это событие использовать не собираюсь. |
| Автор: supervladislav 23.9.2012, 12:34 |
| northener, да разобрался ,спасибо ,но вобще о некотрых деталях говорить надо. |