IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Работа со списком строк
сообщение
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Требуется разработать программу для работы со списками строк. Структура объектов пользовательского класса следующая:
Кадры: имя,номер цеха, разряд;
Список содержит строки с идентификатором объекта и связанной со строкой объект. Для визуализации списка используется компонент TListBox. Предусмотреть создание, просмотр и редактирование объектов, а так же сохранение объектов в файле и их загрузку из файла.

Во-первых, объясните пожалуста, что имеется ввиду под: "Список содержит строки с идентификатором объекта и связанной со строкой объект" и как это можно осуществить?

Ещё проблема с определением в главном модуле класса объектов (Кадры: имя,номер цеха, разряд), размещаемых в списке...(сначало нужно опредилить объект, а потом класс этих объектов или как?? покажите пожалуста на моём примере..)

Причём в классе требуется определить конструктор вида:

constructor TMyObject.Create(поле1:тип;....);
begin
inherited Create;
<инициализация полей>
end;


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Погоди... Я не понял, что происходит? Ты описываешь CurPeoPle, так? Откуда берутся PeopleName, PeopleWorkshop и PeopleRange? Где происходит создание экземпляра CurPeople (в смысле, вызов его конструктора)?

Добавлено через 11 мин.
Может, ты имела в виду вот это:
procedure TForm3.BitBtn1Click(Sender: TObject);
var CurPeople: TPeople;
begin
CurPeople := TPeople(Form1.ListBox1.Items.Objects[Form1.ListBox1.ItemIndex]);
Edit1.Text := CurPeople.fName;
Edit2.Text := IntToStr(CurPeople.fWorkshop);
SpinEdit1.Text :=IntToStr(CurPeople.fRange);
end;
?

Но учти, что если экземпляры объектов TPeople неправильно связаны с ListBox-ом, то последствия будут непредсказуемые...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Цитата(volvo @ 8.05.2008 19:24) *

Погоди... Я не понял, что происходит? Ты описываешь CurPeoPle, так? Откуда берутся PeopleName, PeopleWorkshop и PeopleRange? Где происходит создание экземпляра CurPeople (в смысле, вызов его конструктора)?

Это всё было попыткой обратиться к уже существующему объекту..Конструктор для CurPeople нигде не вызывается..PeopleName, PeopleWorkshop и PeopleRange - поля текущего объекта..т.е. моей целью сейчас является показать подробную ин-ю(ФИО, Цех, Разряд) об объекте, выделенном в ListBox1 на Form1.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Цитата(18192123 @ 8.05.2008 19:40) *

Это всё было попыткой обратиться к уже существующему объекту..Конструктор для CurPeople нигде не вызывается..PeopleName, PeopleWorkshop и PeopleRange - поля текущего объекта..т.е. моей целью сейчас является показать подробную ин-ю(ФИО, Цех, Разряд) об объекте, выделенном в ListBox1 на Form1.

Исправила следующим образом (хочу получить на отдельной форме Form3 подробную ин-цию об объекте, выделенном на Form1 в ListBox1):


procedure TForm3.BitBtn1Click(Sender: TObject);
var CurPeople: TPeople;
begin
CurPeople:=TPeople.Create('',0,0);
CurPeople:=Form1.ListBox1.Items.Objects[Form1.ListBox1.ItemIndex];
Edit1.Text:=CurPeople.Name;
Edit2.Text:=IntToStr(CurPeople.Workshop);
SpinEdit1.Text:=IntToStr(CurPeople.Range);
end;




Возникла ошибка:
[Error] Unit3.pas(36): Incompatible types: 'TPeople' and 'TObject'
[Fatal Error] Project1.dpr(9): Could not compile used unit 'Unit3.pas'

Подскажите пожалуста, правильно ли я вообще делаю и как "бороться" с несоответствием типов?

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
18192123   Работа со списком строк   23.04.2008 22:07
18192123   Вот что получилось: interface type TPeople=class …   24.04.2008 0:32
18192123   Объясните пожалуста, в чём ошибка..не компилится …   4.05.2008 0:22
volvo   Ошибка - в том, что ты не приводишь реализацию мет…   4.05.2008 0:34
18192123   Ошибка - в том, что ты не приводишь [b]реализацию…   4.05.2008 1:41
volvo   :) Ты добавила просто процедуры/функции, а надо бы…   4.05.2008 2:02
18192123   Итак, продолжу задавать вопросы) На 1-й форме у м…   5.05.2008 3:24
volvo   Можно задать тебе один вопрос: что ты делаешь вот …   5.05.2008 4:12
18192123   Можно задать тебе один вопрос: что ты делаешь вот…   5.05.2008 4:34
volvo   Я не заметил этого... Ты просто заносишь в парамет…   5.05.2008 4:43
18192123   И снова здраствуйте! В процессе работы у меня …   8.05.2008 21:45
volvo   Погоди... Я не понял, что происходит? Ты описываеш…   8.05.2008 22:24
18192123   Погоди... Я не понял, что происходит? Ты описывае…   8.05.2008 22:40
18192123   Это всё было попыткой обратиться к уже существующ…   10.05.2008 2:03
volvo   Я показал тебе в предыдущем сообщении, что надо сд…   10.05.2008 4:36
18192123   Я показал тебе в предыдущем сообщении, что надо с…   10.05.2008 6:29
18192123   У меня появился ещё один вопрос.. Пусть на Form3 м…   10.05.2008 21:48
volvo   Точно так же: получаешь сам объект и изменяешь его…   10.05.2008 22:56
18192123   Точно так же: получаешь сам объект и изменяешь ег…   10.05.2008 23:47
volvo   Ты не удаляешь строку, и естественно не удаляешь о…   11.05.2008 0:00
18192123   Здраствуйте. У меня вопрос возник по механизму пер…   12.05.2008 1:08
volvo   Значит, смотри: переносим из ListBox2 (источник) в…   12.05.2008 2:13
18192123   Вот и все в принципе... Для обратной операции - м…   12.05.2008 2:55


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 12:46
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name