Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2011, 16:49   #1
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
Хорошо Организация List of ObjectList

нужен список, списков объектов, у которого можно удалят и добовлят списки,
при етом список объектов так же должен имет функции уделения и добавления объектов
зделал список объектов, но как его занести в обшии список чет не соображу, подскажите пожалуста...
Код:
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Contnrs;
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
type
  EditList = class(TObjectList)
  private
    function GetItems(Index: Integer): TEdit;
    procedure SetItems(Index: Integer; const Value: TEdit);
  public
    property Items[Index: Integer]: TEdit read GetItems write SetItems; default;
  end;
var
  Form1: TForm1;
  EditList1: TObjectList;
  Edit: TEdit;
implementation
{$R *.dfm}
{ EditList }
function EditList.GetItems(Index: Integer): TEdit;
begin
  Result := TEdit(inherited GetItem(Inde)
end;
procedure EditList.SetItems(Index: Integer; const Value: TEdit);
begin
  inherited SetItem(Index, Value)
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  EditList1 := TObjectList.Create(true);
  Edit := TEdit.Create(self);
  Edit.Parent := Form1;
  Edit.Name := 'MyEdit';    
  EditList1.Add(Edit);
 end;
end.
VirusN13

Последний раз редактировалось ArtGrek; 05.01.2011 в 17:36.
ArtGrek вне форума Ответить с цитированием
Старый 05.01.2011, 19:01   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

сделайте список списков обьектов
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 05.01.2011, 19:22   #3
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

так вот ето и не могу, или могу но не поиму как)
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 05.01.2011, 19:34   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ну один список у вас есть, далее делаем список таких списков это:
Код:
type
  TEditList = class(TObjectList)
  private
    function GetItems(Index: Integer): TEdit;
    procedure SetItems(Index: Integer; const Value: TEdit);
  public
    property Items[Index: Integer]: TEdit read GetItems write SetItems; default;
  end;

function TEditList.GetItems;
begin
  Result := TEdit(inherited GetItem(Inde)
end;

procedure TEditList.SetItems;
begin
 inherited SetItem(Index, Value)
end;
список эдитов

Код:
type
  TListOfEditList = class(TObjectList)
  private
    function GetItems(Index: Integer): TEditList;
    procedure SetItems(Index: Integer; const Value: TEditList);
  public
    function NewList:integer;//тупо создает новый список(чтоб руками не делать, короче для удобства)
    property Items[Index: Integer]: TEditList read GetItems write SetItems; default;
  end;

implementation

function TListOfEditList.GetItems;
begin
  Result := TEditList(inherited GetItem(Inde)
end;

procedure TListOfEditList.SetItems;
begin
 inherited SetItem(Index, Value)
end;

function NewList;
begin
 Result:=Add(TEditList.Create);
end;
примерно так
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 06.01.2011, 06:10   #5
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

как, после того, как я удалил компонент, поднят на 1 все компоненты что после него?
Код:
procedure TForm1.Button2Click(Sender: TObject);
begin
  EditList1[1].Destroy;
end;
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 11.01.2011, 08:07   #6
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

EditList1.Pack
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 13.01.2011, 01:43   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вообще используйте метод Delete самого списка.(он вызывает Destroy сам)
Код:
EditList1.Delete(1);
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
list in list Cpluser Общие вопросы .NET 1 28.10.2010 02:38
List view bulldog5293 Общие вопросы Delphi 13 10.07.2010 22:39
List<> Cpluser Общие вопросы .NET 3 20.03.2010 15:02
list<wstring> ? artush1984 Общие вопросы C/C++ 4 12.02.2010 15:05
List yurik1 Общие вопросы C/C++ 1 06.05.2008 16:34