Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Вниз

Пересечение классов   Найти похожие ветки 

 
HSD   (2004-08-15 23:55) [0]

Приветствую эксперты.Тут я делаю так:
procedure ListUser(Lb2:TListBox);
begin
lb2.items.add("1");
end;

вызываю так - ListUser(Lb2);

НО так как я не передаю другие обьекты(боксы),
то нашел так делать-
procedure TForm1.ListUser;
begin
lb2.items.add("1");
end;
+TForm1 в раздел private

вызываю так - ListUser;
незнаю правельно ли? с точки зрения ресурсов,
но работает и удобнее

решил таким образом добавить процедуры пересекающие
с VCL -то же работает

TReadd = class
tabl:byte;
procedure Read(CB1,CB2:TCheckBox;
                 RadioGroup1:TRadioGroup;
                 E:TSpinEdit;
                 lbss:TListBox);
end;

procedure TReadd.Read(CB1,CB2:TCheckBox;
                 RadioGroup1:TRadioGroup;
                 E:TSpinEdit;
                 lbss:TListBox);

begin
end;

,но попытка сделать упрощенную запись,
как  ListUser(Lb2); =>  ListUser;
неудается приходется так :

вызов
CLA.Read(CB1,CB2,RadioGroup1,E,lbss);

хотелось бы так CLA.Read;
как описать незнаю(в книгах нет такого)

procedure TForm1.Read(CB1,CB2:TCheckBox;
                 RadioGroup1:TRadioGroup;
                 E:TSpinEdit;
                 lbss:TListBox);
TReadd = class
tabl:byte;
Read;  //???  = TForm1.Read
end;


 
Fay ©   (2004-08-16 02:40) [1]

Бредятина какая-от. Можно повторить понятнее?


 
Fay ©   (2004-08-16 02:41) [2]

В смысле "... какая-то" 8)


 
KSergey ©   (2004-08-16 07:28) [3]

Короче вроде отдаленно понимаю о чем речь. Был тут недавно треп по поводу кольцевых ссылок.

Из общих соображений:
Можно спорить о производительности и ее необходимости в конкретном месте, однако лучше, если программа будет читабельнее и легче поддаваться модификации, чем выигрыш в 2 милисекунды (где эти милисекунды действительно не критичны).
А легче понимать и модифицровать функцию, параметры которой четко понятны и видны, чем ту, в которой есть жуткие завязки на другие модули.


 
HSD   (2004-08-19 13:40) [4]

Хотел сделать упрощенную запись вызова функции,т.е
procedure ListUser(Lb2:TListBox);
свел к
procedure TForm1.ListUser;
по этому вызов проще:ListUser;
не надо указывать обьект.
------------------------------------------
Вот и хотел упростить это
TReadd = class
procedure Read(CB1,CB2:TCheckBox;
                RadioGroup1:TRadioGroup;
                E:TSpinEdit;
                lbss:TListBox);

чтоб вызвать как нибудь так:
ASA:=TReadd.create;
ASA.Read; без указания обьектов

Но видимо тут не получится так


 
TUser ©   (2004-08-19 13:48) [5]

Получится, если написать код.

PS. За последний месяц - по моему ИМХО самый крутой пример того, как можно в топике выразить свои мысли предельно непонятно. Уж извини.


 
HSD   (2004-08-19 14:05) [6]

>выразить свои мысли предельно непонятно.
да давно я не сидел в инете...извините!
и писал всегда так длинно,что запарило,а
в чужих исходниках ничего подобного нет,
покрайне мере которые я видел

procedure Read(Sender:TObject);
{(CB1,CB2:TCheckBox;
               RadioGroup1:TRadioGroup;
               E:TSpinEdit;
               lbss:TListBox);}


 
TUser ©   (2004-08-19 14:12) [7]

Дальше обычно пишут var или begin. Еще варианты - Type, const, procedure, function, label. На выбор.


 
HSD   (2004-08-19 14:15) [8]

знаю это обьявление
TReadd = class
Count:word;
procedure Read(Sender:TObject);
end;

procedure Read(Sender:TObject);
begin
if Count>0 then CB1.checked:=true;
....
lbss.items.Add("sss");
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.041 c
4-1090246123
Sasha73
2004-07-19 18:08
2004.09.05
Убрать чужую иконку из SystemTray ?


1-1092989131
[BAD]Angel
2004-08-20 12:05
2004.09.05
Как поместить форму ниже всех остальных и оставить ее активной?


3-1092170639
Cobalt
2004-08-11 00:43
2004.09.05
Текст запроса корёжит не по детски :(


1-1092748061
shc
2004-08-17 17:07
2004.09.05
Освобождение памяти в TreeView


8-1087326700
European
2004-06-15 23:11
2004.09.05
Интересный визуальный эффект





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский