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

Вниз

Имена компонентов....   Найти похожие ветки 

 
Manulo   (2002-10-22 11:19) [0]

Фишка такая, в проекте используеться 8 ServerSocket... Понятное дело, множество функций и процедур касательно этих компонент очень сильно перекликаються друг с другом... Отличие сосотоит только в том, какая именно компонента используется в данной процедуре. Например:


procedure btnClick (Sender ...);
var i : byte;
begin
i:=StrToInt(Edit1.text);
case i of
1 : ServerSocket1.open;
2 : ServerSocket2.open;
3 : ServerSocket3.open;
4 : ServerSocket4.open;
5 : ServerSocket5.open;
6 : ServerSocket6.open;
7 : ServerSocket7.open;
8 : ServerSocket8.open;
end;
end;

Так вот вопрос, как можно избежать повторения одних и тех же строк, отличающихся по сути только именем компонента? То есть как сделать некую процедуру ServerSocketOpen (i : byte);, которая по указанному ключу активировала компонент ServerSocketN, где вместо N -- ключ, передаваемый в процедуру?


 
Skier   (2002-10-22 11:20) [1]

>Manulo
FindComponent(...) ?


 
Smithson   (2002-10-22 11:26) [2]

Создай массив var Sockets: Array[1..8] of TserverSocket и дальше твой case превратиться в
i:=StrToInt(Edit1.text);
Sockets[I].Open;



 
Manulo   (2002-10-22 11:32) [3]

Хорошо, допустим компонент я нашёл, а как получить доступ к его свойствам (Я не имею в виду свойства типа Create, Destroy, который из определения присущи любому компоненту, а именно его личные свойства, как в данном случае процедура Open


 
Skier   (2002-10-22 11:36) [4]

>Manulo
Кастинг ? :)


 
Peter Gluhiy   (2002-10-22 11:43) [5]

Manulo © (22.10.02 11:32)
TServerWinSocket(Component).Open


 
Manulo   (2002-10-22 11:43) [6]

Skier
Это ты такой лаконичный, или просто решил поза!!!вать? :)
Поподробнее можна?


 
Skier   (2002-10-22 11:44) [7]

>Manulo
Peter Gluhiy © (22.10.02 11:43)


 
Manulo   (2002-10-22 14:12) [8]

Peter Gluhiy
Skier

Дякую, Хлопці (укр.) -- пасибки, Мастера :)



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

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

Наверх





Память: 0.46 MB
Время: 0.01 c
14-101440
MVova
2002-10-10 11:36
2002.10.31
Почему ICQ а не MSN


1-101290
dimonf
2002-10-22 16:55
2002.10.31
Как вытащить данные из документа Microsoft Word.


14-101499
vopros
2002-10-11 17:17
2002.10.31
Вот скажи на фига перепись?


4-101580
Zion
2002-09-19 18:23
2002.10.31
Вопрос тоже кстати из-за неопытности....


1-101335
Super
2002-10-18 20:21
2002.10.31
Кто нибудь знает адрес сайта где собрана вся библиотека RFC?





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