![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Реакция на нажатие кнопки [D7, WinXP]
Горбатов В.Ю. © (2004-11-01 12:17:00)Уважаемые господа, поделитесь идеей!
Есть форма, с размещенными несколькими Edit'ами, в которые циклически вставляются строчки из файла. Также на форме есть кнопки <Применить>, <Пропустить>, <Отменить>.
Каким образом можно в теле цикла вставить ожидание нажатия кнопки?
clickmaker (2004-11-01 13:53:00) [1]
> Из файла получил строку, пользователь решает обрабатывать
> ее далее или пропустить, а если у кнопки на OnClick навесить
> обработку, то нужно следить когда файл открыт - закрыт,
> ну и еще кое-какие замороки получаются.
Не вижу никаких заморок. Открыл форму - открыл файл, выкинул юзеру первую строчку. Он отвечает "Применить" - обрабатывай, "Пропустить" - читаешь следующую. Закрываешь форму - закрывай файл.
Структурно так:
FormCreate
begin
F := CreateFile (или FileOpen или что у тебя там)
ReadFile(F, Str)
end;
ApplyButtonClick;
begin
Obrabotka(Str);
ReadFile(F, Str);
end;
SkipButtonClick
begin
ReadFile(F, Str);
end;
FormDestroy
begin
CloseHandle(F)
end;
BillyJeans (2004-11-01 13:35:00) [2]в свой цикл воткни строчку:
Application.ProcessMessages;
Горбатов В.Ю. (2004-11-01 13:27:00) [3]2clickmaker - такой вариант уже обдумывал, не проще. Из файла получил строку, пользователь решает обрабатывать ее далее или пропустить, а если у кнопки на OnClick навесить обработку, то нужно следить когда файл открыт - закрыт, ну и еще кое-какие замороки получаются.
2BillyJeans - А можно поподробнее...смотрю хелп, там только пример, ничего не объясняющий.
Нужно именно ожидание вставить в сам цикл, который его останавливает, пока не будет нажата какая-либо кнопка. В Borland Pascal можно было навесить ожидание на readln или keypressed, тут же то же подобная фиговина должна присутствовать, вот только какая?
BillyJeans (2004-11-01 12:56:00) [4]Application.ProcessMessages;
clickmaker (2004-11-01 12:27:00) [5]
> Каким образом можно в теле цикла вставить ожидание нажатия
> кнопки?
Зачем?
Не проще ли строчки вставлять по нажатию кнопки?
BillyJeans (2004-11-01 12:27:00) [6]Application.ProcessMessages;