![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
потеря управления контрола [D2005, XP]
jacksotnik © (2012-01-30 11:37:00)Всем привет. подскажите как сделать так чтобы после нажатия на кнопку в ней вызывается процедура, и чтоб после того как отработала процедура не возвращалось в процедуру onclick кнопки
Юрий Зотов (2012-01-30 11:57:00) [21]
> jacksotnik (30.01.12 11:52) [7]
> Мне надо удалить объект класса при нажатии на кнопочку созданную
> внутри класса, тоесть должна уничтожиться и кнопка на которую
> нажали.
Похоже, подозрение на X, Y, Z находит свое подтверждение. Зачем это нужно, расскажите.
И. Павел (2012-01-30 11:55:00) [22]> в обработчике генерирую свое сообщение
В вашем случае в обработчике onclick.
AV (2012-01-30 11:55:00) [23]т.е. уничтожение объекта из самого объекта?
ерунда.
PostMessage диспетчеру - православный выход
И. Павел (2012-01-30 11:55:00) [24]> [7] jacksotnik (30.01.12 11:52)
Была такая задача. Решил так: в обработчике генерирую свое сообщение. В обработчике своего сообщения удаляю объекты.
jacksotnik (2012-01-30 11:52:00) [25]Мне надо удалить объект класса при нажатии на кнопочку созданную внутри класса, тоесть должна уничтожиться и кнопка на которую нажали. но все это надо организовать без передачи сообщения в мейн форму. попробую с генерацией эксепшена
Ega23 (2012-01-30 11:46:00) [26]
function PPP: Boolean;
begin
Result := MessageBox(Handle, 'ttt', 'ttt', MB_OKCANCEL) = IDOK;
end;
procedure TForm1.btn1Click(Sender: TObject);
begin
ShowMessage( 'before PPP;');
if PPP then
ShowMessage( 'after PPP;');
end;
И. Павел (2012-01-30 11:46:00) [27]> [0] jacksotnik (30.01.12 11:37)
Если я правильно понял вопрос, то должен помочь вызов Abort в конце вложенной процедуры. Тогда возникнет исключение и проскочится весь код в OnClick (если там, конечно, нет нужного catch).
Юрий Зотов (2012-01-30 11:44:00) [28]Есть подозрение на X, Y, Z. Объясните, зачем все это?
AV (2012-01-30 11:44:00) [29]procedure PPP;
begin
ShowMessage( 'procedure PPP;');
raise Exception.Create('');
end;
procedure TForm1.btn1Click(Sender: TObject);
begin
ShowMessage( 'before PPP;');
PPP;
ShowMessage( 'after PPP;');
end;
Юрий Зотов (2012-01-30 11:43:00) [30]> как сделать так чтобы после нажатия на кнопку в ней вызывается
> процедура
Из OnClick эту процедуру и вызвать.
> и чтоб после того как отработала процедура не
> возвращалось в процедуру onclick кнопки
Никак. Но можно в OnClick больше ничего не делать.
RWolf (2012-01-30 11:42:00) [31]смысл?