Delphi - MainMenu и выход из программы

Аватара пользователя
novashdima

Delphi - MainMenu и выход из программы

Сообщение novashdima »

Добрый день. В проге имеется главное меню, и конечно же стандартная менюшка "Выход", все, что надо сделать при нажатии на эту клавишу, это выполнить Form.Close, но вот в чем проблема, если прописать в обработчике нажатия Close или Form.Close, то компилятор ругается, будто нет соответствующей процедуры и если запустить прогу вывалится AV.

Создавать же обработчик и в нем писать одну единственную команду Close бред... Как быть?
Аватара пользователя
lxa85

Re: Delphi - MainMenu и выход из программы

Сообщение lxa85 »

Цитата novashdima:



Как быть?
Delphi - MainMenu и выход из программы




Начать приводить примеры кода и ошибок компилятора.

А вообще, не Form.Close, а Form1.Close (если имя формы не менялось)

что то я сейчас ленюсь теорию с практикой на пальцах объяснять
Аватара пользователя
Любезный

Re: Delphi - MainMenu и выход из программы

Сообщение Любезный »

Цитата novashdima:



Создавать же обработчик и в нем писать одну единственную команду Close бред... Как быть?
Delphi - MainMenu и выход из программы




А как вообще вы хотите выполнить "действие", не создавая обработчик?
Аватара пользователя
LilLoco

Re: Delphi - MainMenu и выход из программы

Сообщение LilLoco »

Цитата lxa85:



если имя формы не менялось
Delphi - MainMenu и выход из программы




Имя формы менялось, поэтому Form.Close я привел для примера.




Цитата lxa85:



Начать приводить примеры кода и ошибок компилятора.
Delphi - MainMenu и выход из программы




Я итак вроде бы понятно написать, что имеется на форме компонент MainMenu, в этом MainMenu есть Item, при событии OnClick по которому надо делать Close. Если написать в обработчик Close то компилятор говорит, мол не найдена процедура обработки Close, удалить описание? Я говорю нет, и тогда при запуске программы вылетает AV (Access Violation), что логично.




Цитата LilLoco:



А как вообще вы хотите выполнить "действие", не создавая обработчик?
Delphi - MainMenu и выход из программы




Можно создать свою процедуру и повесить ее на обработку любых событий нескольких компонентов, почему тогда нельзя на обработку повесить вызов не своей процедуры, а вызов обработчика формы?
Аватара пользователя
novashdima

Re: Delphi - MainMenu и выход из программы

Сообщение novashdima »

Меня поражает нежелание людей приводить кусочек исходного текста. Я же не весь код прошу, а только проблемный участок. Может там синтаксическая ошибка, может логическая, нам как угадывать?

Вот сложно привести небольшой фрагмент описания формы, и вызов процедуры MainMenu?
Цитата novashdima:



Можно создать свою процедуру и повесить ее на обработку любых событий нескольких компонентов, почему тогда нельзя на обработку повесить вызов не своей процедуры, а вызов обработчика формы?
Delphi - MainMenu и выход из программы




Три раза перечитал, три раза не понял. Наверно из-за нарушений принципов ООП.

---

Еще раз прошу привести фрагмент проблемного кода.
Аватара пользователя
lxa85

Re: Delphi - MainMenu и выход из программы

Сообщение lxa85 »

Цитата lxa85:



Три раза перечитал, три раза не понял.
Delphi - MainMenu и выход из программы




А я после прочтения второй раз, думаю, что автор пытается запихать не в код обработчика метод Close, а в имя обработчика.

Что то типа этого:

вместо



Код:

Код: Выделить всё

procedure TForm1.НажатиеПунктаМеню(Sender: TObject);
begin
  Form.Close;
end

это



Код:

Код: Выделить всё

ПунктМеню.OnClick:=Form.Close;


Цитата novashdima:



Я итак вроде бы понятно написать
Delphi - MainMenu и выход из программы




Но никто не понять, увы...
Аватара пользователя
LilLoco

Re: Delphi - MainMenu и выход из программы

Сообщение LilLoco »

Цитата LilLoco:



А я после прочтения второй раз, думаю, что автор пытается запихать не в код обработчика метод Close, а в имя обработчика.
Delphi - MainMenu и выход из программы




Да, все верно


Цитата LilLoco:



ПунктМеню.OnClick:=Form.Close;
Delphi - MainMenu и выход из программы




Так сделать реально?
Аватара пользователя
novashdima

Re: Delphi - MainMenu и выход из программы

Сообщение novashdima »

Цитата novashdima:



Так сделать реально?
Delphi - MainMenu и выход из программы




А в документации почитать — реально или нет — нельзя?!
Аватара пользователя
Iska

Re: Delphi - MainMenu и выход из программы

Сообщение Iska »

Цитата Iska:



А в документации почитать — реально или нет — нельзя?!
Delphi - MainMenu и выход из программы




Вот все, что есть в документации

Изображение
Аватара пользователя
novashdima

Re: Delphi - MainMenu и выход из программы

Сообщение novashdima »

novashdima, это нарушение принципов ООП. Я завтра картинку нарисую для наглядности. Некорректное взаимодействие объектов.
Ответить

Вернуться в «Программирование и базы данных»