Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Компактный код


Автор: Pavelbej 5.8.2005, 18:13
Этот код я очень часто использую. Можно как то засунуть его в процедуру или функцию и потом ее вызвать в нужном месте. Если да, то как? smile


Код

if memo1.tag=1 then
        begin
        case MessageDlg('Do you want to save?',mtConfirmation,mbYesNoCancel,0) of
        IDYes: Save1Click(sender);
        IDCancel: exit;
        end;
        end;

Автор: Z10 5.8.2005, 18:30
Код

procedure Tform1(на пример).ChangeProc;
begin
if memo1.tag=1 then    
        begin    
        case MessageDlg('Do you want to save?',mtConfirmation,mbYesNoCancel,0) of    
        IDYes: Save1Click(sender);    
        IDCancel: exit;    
        end;    
        end;
end;

smile
smile

Автор: Pavelbej 5.8.2005, 18:51
Проблема - Save1Click(sender). Не нравится этот sender.

Автор: markowww 5.8.2005, 20:24
Если ты в Save1Click не используешь параметр Sender, то замени

IDYes: Save1Click(sender);

например на

IDYes: Save1Click(Self);

Автор: Poseidon 5.8.2005, 21:34
Цитата(Pavelbej @ 5.8.2005, 18:51)
Проблема - Save1Click(sender). Не нравится этот sender.
А зачем тебе вызывать процедуру? На сколько я понял, Save1 - это кнопка (TButton в общем или аналог). Если так, то имитируй щелчок по этой кнопке:
Код
IDYes: Save1.Click


Автор: Pakshin A. S. 5.8.2005, 21:47
Цитата(Poseidon @ 5.8.2005, 22:34)
А зачем тебе вызывать процедуру? На сколько я понял, Save1 - это кнопка (TButton в общем или аналог). Если так, то имитируй щелчок по этой кнопке:

А не будет все-таки задержки? Быстрее по-моему саму процедуру вызвать...

Автор: Poseidon 5.8.2005, 22:18
Не думаю, что разница в скорости будет заметна. Но вот гемора с передаваемым переметром точно не будет. smile

Автор: Pavelbej 6.8.2005, 00:54
Отлично работает, спасибо вам огромное!

Автор: Medved 10.8.2005, 03:22
Лучше в dll-ку запихай.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)