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

Вниз

Проблема с 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 вся ветка

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

Наверх





Память: 0.45 MB
Время: 0.008 c
3-24350
Алексей Петухов
2003-08-17 12:23
2003.09.08
Insufficient memory for this operation


3-24376
NewD
2003-08-16 11:33
2003.09.08
странное поведение QuickReport


14-24646
SerVel
2003-08-21 18:33
2003.09.08
interrupt


14-24692
Dimaxx
2003-08-11 23:38
2003.09.08
Чёт странно...


4-24753
tiam
2003-07-07 10:34
2003.09.08
Как направить приложению строку текста?





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