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

Вниз

как хранить данные   Найти похожие ветки 

 
Handle   (2011-04-22 17:21) [0]

в stringlist нужно хранить данные (в дальнейшем будут использоваться для визуализации):

 ProductName
 ProductType
 ProductCompany
 ProductModel
 AutoAction
 AutoLink
 AutoReason
 Antonym
 UserAction
 UserLink

Как привильнее сделать, написать класс, поля которого будут содержать необходимую информацию и передавать так StringList.AddObject("", TMyClass.Create(...)); или же подругому.

1-й вариант


TmyClass = class
private
 FProductName:string;
 FProductType:string;
 FProductCompany:string;
 FProductModel:string;
 FAutoAction:string;
 FAutoLink:string;
 FAutoReason:string;
 FAntonym:string;
 FUserAction:string;
 FUserLink:string;
public
 constructor Create(const ProductName, ProductType, ProductCompany,
   ProductModel, AutoAction, AutoLink, AutoReason, Antonym, UserAction,
   UserLink: string);
   ProductName
 property ProductType: string read FProductType;
 property ProductCompany: string read FProductCompany;
 property ProductModel: string read FProductModel;
 property AutoAction: string read FAutoAction;
 property AutoLink: string read FAutoLink;
 property AutoReason: string read FAutoReason;
 property Antonym: string read FAntonym;
 property UserAction: string read FUserAction;
 property UserLink: string read FUserLink;
end;

2-вариант

Tprods_list_item = record
  ProductName, ProductType, ProductCompany, ProductModel, AutoAction,
 AutoLink, AutoReason, Antonym, UserAction, UserLink: string;
end;

Tprods_list_item_ = class
private
 FItem: Tprods_list_item;
public
   constructor Create(const ProductName, ProductType, ProductCompany,
   ProductModel, AutoAction, AutoLink, AutoReason, Antonym, UserAction,
   UserLink: string);
property Item: Tprods_list_item read FItem;  
end;


 
clickmaker ©   (2011-04-22 17:25) [1]

а в чем фишка 2-го варианта?


 
Handle   (2011-04-22 17:31) [2]


> а в чем фишка 2-го варианта?


насоветовали на другом форуме.

лично я пока что склоняюсь к первому варианту.


 
Юрий Зотов ©   (2011-04-22 17:43) [3]

Первый вариант прозрачнее, только зачем использовать именно TStringList, если в AddObject все равно всегда передается пустая строка? Логичнее было бы использовать TList или TObjectList.


 
clickmaker ©   (2011-04-22 17:43) [4]

> насоветовали на другом форуме

больше туда не ходи


 
Игорь Шевченко ©   (2011-04-22 17:57) [5]

и на этот тоже


 
sniknik ©   (2011-04-22 18:18) [6]

>  ProductName
>  ProductType
>  ProductCompany
>  ProductModel
>  AutoAction
>  AutoLink
>  AutoReason
>  Antonym
>  UserAction
>  UserLink

> Как привильнее сделать, написать класс
как "привильнее" не знаю, а правильней не писать! использовать готовый рекордсет.



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

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

Наверх





Память: 0.46 MB
Время: 0.003 c
15-1302710075
R_R
2011-04-13 19:54
2011.07.31
Screen Dos приложения


3-1261769117
Col2Row
2009-12-25 22:25
2011.07.31
Как запросом или процедурой получить столбец в виде строки?


2-1303655524
istok
2011-04-24 18:32
2011.07.31
TSemaphore в Delphi7


2-1303392541
барсук
2011-04-21 17:29
2011.07.31
Как вывести список IP, к которым стороняя программа подключена


2-1303387044
stenfit
2011-04-21 15:57
2011.07.31
Incompatible types





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