Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как из общего popupmenu вызвать продцедуру конкретной формы ? / 7 сообщений из 7, страница 1 из 1
03.01.2003, 17:06
    #32086191
Dennis_L
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
Для некоторых компонентов TEdit DBGridEx и т.д. я использую общее popupmenu которое создано в отдельной форме. Т.к. эти компоненты выполняют некоторые одинаковые специфические функции.
Но вот возникла проблема ... по челчку на пункте меню надо вызвать какую то продцедуру конкретной формы где находиться контроль (реально надо опять же вызвать общую для всех контролей продцедуру но входные параметры надо взять из определенных контролей на форме, которые для разных форм разные) и у меня не получаеться этого сделать

Возможно ли это реализовать ?
...
Рейтинг: 0 / 0
03.01.2003, 17:10
    #32086192
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
если я правильно понял вопрос, то нужно что-то в этом духе

1/ указать другие формы в uses той, где ваш popup
2/ использовать обращение к объекту такое
например из метода Form3 (где Popup)
Form1.Edit1.Text/Form2.CombBox2.Text
...
Рейтинг: 0 / 0
03.01.2003, 17:37
    #32086198
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
Ну как же можно заниматься программированием на объектном паскале, не понимая таких понятий ООП, как наследование и полиморфизм?
Создаёшь родовую форму и все остальные наследуешь от неё. Если в каждой форме по нажатию кнопки нужно вызывать разные методы - используй в базовой форме виртуальный абстрактный метод, который будешь перекрывать в наследниках и вызывать из него что захочешь.
Ну если уже поздно переделывать - попробуй химичить с перобразованиями типов, указателями или подобным баловством.
...
Рейтинг: 0 / 0
03.01.2003, 18:06
    #32086208
Dennis_L
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
Элементы меню popup меню созданы в форме где находиться само popupmenu при выполнении определенных пунктов меню я получаю контроль как Screen.ActiveControl, теперь надо определить в какой форме находиться данный контроль и вызвать у этой формы определенную продцедуру. ТОесть надо плучить ссылку на форму ...
...
Рейтинг: 0 / 0
03.01.2003, 18:10
    #32086210
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
Неуж-то я непонятно намекнул? Я уж и не знаю, что тебе ещё сказать ...
...
Рейтинг: 0 / 0
03.01.2003, 18:43
    #32086214
Dennis_L
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
Намек то понятен ...
1. Но я незнаю как мне получить ссылку на форму зная контроль находящийся на ней ?
2. Надо сделать так чтобы я мог в любой уже существующей форме проэкта указать для какогото контрола в свойстве poupupmenu описанное выше popupmenu и затем побавить продцедуру и все работа ло бы. :) возможно конечно что это невозможно ...
...
Рейтинг: 0 / 0
03.01.2003, 19:36
    #32086228
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как из общего popupmenu вызвать продцедуру конкретной формы ?
1.
var
Control:TWinControl;
begin
Cintrol:=... // короче, в этой переменной д.б. указатель на твой контрол
while not Control is TForm do
Control:=Contro.Parent;
...

2. Так и не понял, и в чём проблема - в том числе ...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как из общего popupmenu вызвать продцедуру конкретной формы ? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]