Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.08;
Скачать: CL | DM;

Вниз

клоны?!   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.009 c
1-23223
CAHbKA
2003-04-24 07:49
2003.05.08
Edit


14-23333
Soft
2003-04-08 13:17
2003.05.08
Программисты это просто киборги


3-22908
Silver_
2003-04-16 16:49
2003.05.08
ADODataSet.Filter - с датой и ВРЕМЯ как правильно создать


14-23344
tropin
2003-04-16 14:48
2003.05.08
Куда девали TServerSocket и TClientSocket в Д7 ???


14-23299
MalkoLinge
2003-04-22 16:09
2003.05.08
ВСтреча мастаков Киева





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский