![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
MessageBox в процедуре ScrollBar1Scroll
Ja © (2004-10-07 17:34:00)Использую Application.MessagBox(...) в обработке события OnScroll полосы прокрутки ScrollBar1, т.е.
procedure TForm1.ScrollBar1Scroll(Sender: TObject;
ScrollCode: TScrollCode; var ScrollPos: Integer);
var m: integer;
begin
if ButtonApply.Enabled then begin
m:=Application.MessageBox('Save?','',MB_YESNOCANCEL);
if m=6 then ButtonApply.Click;
end;
................
end;
MessageBox появляется, нажимается на нем кнопка (независимо какая-да, нет, отмена), MessageBox исчезает и....опять открывается и дальше все идет так, как надо. Практическими путями было определено ( :) ), что такой глюк происходит именно от того, что MessageBox используется именно в этой процедуре... как решить или обойти эту проблему?
Ja (2004-10-07 17:45:00) [1]Скроллом меняются картинки, которые могут быть изменены. И при пролистывании необходимо спрашивать, сохранить ли изменения...вот... Замечание вполне логично и целесообразно , но не в этом случае :) здесь же приведен только кусок кода...
Amoeba (2004-10-07 17:40:00) [2]А зачем вообще надо это делать?
P.S. Замечание по коду. Лучше писать так:
if Application.MessageBox('Save?','',MB_YESNOCANCEL) = 6 then
ButtonApply.Click;