Форум: "Основная";
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];
Внизклоны?! Найти похожие ветки
← →
I/O (2003-04-25 16:47) [0]Есть ~40 пунктов меню, для каждого пункта есть событие OnClick, состоящее, примерно из 10 строк кода. Из них, 5 одинаковы для всех.
Неужели переписывать их для всего или можно к-л образом это исправить?
← →
REA (2003-04-25 16:49) [1]Можно исправить. Для начала нужно убрать из меню ~33 лишних пункта.
← →
Dms (2003-04-25 16:50) [2]можно ... ставь всем один обработчик
← →
wal (2003-04-25 16:52) [3]Дык вынести эти строки в отдельную процедуру (функцию?)
← →
I/O (2003-04-25 16:58) [4]Цо то не пойму (пятница все-таки), а как потом обращаться к этой процедуре?
← →
Anatoly Podgorestky (2003-04-25 17:01) [5]К процедуре обращаются по ИМЕНИ
← →
Dms (2003-04-25 17:10) [6]и отчеству
← →
Proton (2003-04-25 19:36) [7]Для всех пунктов меню назнать одну процедуру, скаже mi1click а потом рли так
Procedure mi1click(sender:tboject);
begin
if tmenuitem(sender).caption = "открыть" then
opendial....
или
if tmenuitem(sender).name = "miopen" then
opendial....
или
if sender = miopen then
opendial....
end;
← →
I/O (2003-04-26 17:17) [8]Недопонял насчет:
"Для всех пунктов меню назнать одну процедуру"
← →
Anatoly Podgoretsky (2003-04-26 17:20) [9]Зачем 40 процедур?
Чем они отличаются, может зря столько?
← →
I/O (2003-04-26 17:22) [10]Отличаются названием загружаемого файла
← →
Palladin (2003-04-26 17:25) [11]ну и ну
← →
EK (2003-04-26 22:03) [12]Как-то так:
{Почитай ООП}
Опиши пункт меню как класс (Например, TPunktMenu). Добавь туда член типа
open_filename:String.
Напиши там всего одну процедуру:
Псевдокод:
procedure TPunktMenu.Clicked(Sender:TOBject);
begin
...
OpenFile(open_filename);
end;
В конструкторе или в виде отдельной процедуры :
1)добавь возможность назначения члена open_filename;
2)OnClick:=Clicked;
Все.
А теперь кто-нибудь! Ответтье наконецц, как мне загружать mpeg4 - я уже двое суток жду! Че - никто не знает?!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c