Вниз
Скачать: CL | DM;

Проблема с ToolBar ами   Найти похожие ветки 

 
хз ©   (2003-08-27 14:47) [0]

Помогите решить проблему. Вот уже 2 день я сижу и не могу понять почему ЭТО не работает. Задача следующая: имеем форму, на форме динамически создаются ToolBar"ы, а на них кнопки. Т.е есть поле где надо писать название ToolBar"a+кнопка "Создать" и есть поле где нужно писать Caption для кнопки+кнопка "Добавить". Это общее описание. Теперь самое главное. Мне нужно сохранять ВСЕ ToolBar"ы и, соответственно, кнопки на них, а потом загружать при новом запуске. Т.е что-то вроде:

...
for i:=0 to form1.compnentscount-1 do
begin
if Form1.Components[i] is TTBToolbar {Я использую ToolBar 2000} then
begin
...Сохранение

//Процедура сохранения компонента:

procedure SaveComponentToTextFile(Component: TComponent; const FileName: string);
var
ms:TMemoryStream;
fs:TFileStream;
begin
fs:=TFileStream.Create(FileName, fmCreate or fmOpenWrite);
ms:=TMemoryStream.Create;
try
ms.WriteComponent(Component);
ms.position := 0;
ObjectBinaryToText(ms, fs);
finally
ms.Free;
fs.free;
end;
end;

//Процедура загрузки компонента:

procedure LoadComponentFromTextFile(Component: TComponent; const FileName: string);
var
ms:TMemoryStream;
fs:TFileStream;
begin
ms:=TMemoryStream.Create;
fs:=TFileStream.Create(FileName, fmOpenRead);
try
ObjectTextToBinary(fs,ms);
ms.position:=0;
ms.ReadComponent(Component);
finally
ms.Free;
fs.free;
end;
end;

Это сохранение. Здесь еще что-то получается. А вот с загрузкой проблемы. И так пробовал и так...И с XML не фурычит, а при LoadComponentFromTextFile выдает ошибку, что вроде того, что класс TTbItem не найден, хотя он присутствует. Может кто поделится своими мыслями на сей счет? А то у меня голова уже не варит...


 
Camus ©   (2003-08-27 17:44) [1]

Надо зарегистрировать все используемые при записи/чтении классы (включая классы объектных свойств). В initialization:
RegisterClasses([TTbItem, ...);


 
хз ©   (2003-08-27 19:28) [2]

> Camus ©

Спасибо.


 
хз ©   (2003-08-27 20:52) [3]

Попутно возникли две новые проблемы: не сохраняется CurrentDock у ToolBar"ов и OnClick у кнопок. Help me, plz...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
14-24635
kaif
2003-08-20 19:34
2003.09.08
О фамилиях футболистов и политиков


1-24457
AndreySoft
2003-08-28 09:21
2003.09.08
Как установить DelphiX


4-24744
Shluz
2003-07-02 12:24
2003.09.08
wm_SetText


6-24599
Shluz
2003-06-27 20:41
2003.09.08
SMS своими руками ...


1-24547
Seldon
2003-08-26 13:07
2003.09.08
FindFirst etc




   Наверх