Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.05;
Скачать: CL | DM;

Вниз

Мне нужно сохранить все изменения в программы в фаил.   Найти похожие ветки 

 
Denisco   (2002-07-22 17:16) [0]

Я созда текстовый редакто в котором можно изменять место положение и размеры любого компонента. И мне хочется чтобы при работе с программой пользователь изменив местоположение или размер какой нибудь компоненты мог новый вид программы сохранить в фаил, а потом при необходимости загрузить его. Еще у меня можно переместить компонент с одной формы в другую, как быть сней? Прошу напишите код, а то я новичек в програмирование на Delphi.


 
RV ©   (2002-07-22 17:33) [1]

Так если ты при создании формы создаешь компоненты на ней в рантайме - то решение, по-моему, очевидно(берешь лефты-райты-боттомы-топы из файла(ини,тхт,дат), крый создаешь при выходе)
если накидал компоненты мышой - после загрузки такого файла делаешь тоже самое.
какой код нужен?
работы с файлами? изменение размеров компонент? создание компонент в рантайме?


 
Евген ©   (2002-07-23 19:18) [2]

При выходе из проги пишеш все позиции в реестр, а при открытии читаешь их:
______________________________________________________________

uses
Registry;
...
procedure Read_Registry;
procedure Write_Registry;
FIniFile: TRegIniFile;
...
const
SECTION = "Test2";
...
procedure TForm1.FormCreate(Sender: TObject);
begin
FIniFile := TRegIniFile.Create("Sample Registry");
//Читаем реестр
Read_Registry;
end;
...
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//Завершение всех процессов

//Запись в реестр
Write_Registry;
end;
...
procedure TForm1.Write_Registry;
begin
FIniFile.WriteInteger(SECTION, "MainFormHight", Form1.Height);
FIniFile.WriteInteger(SECTION, "MainFormWidth", Form1.Width);
FIniFile.WriteInteger(SECTION, "Splitter", Splitter1.Left);
end;

procedure TForm1.Read_Registry;
begin
Form1.Height:=FIniFile.ReadInteger(SECTION, "MainFormHight", 400);
Form1.Width:=FIniFile.ReadInteger(SECTION, "MainFormWidth", 550);
Panel1.Width:=FIniFile.ReadInteger(SECTION, "Splitter", 200);
end;


Ну вроде все. Если че непонятно - мыль: вышлю исходник.



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

Текущий архив: 2002.08.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
4-13862
NOVLAD
2002-05-27 17:35
2002.08.05
cryptoAPI для DELPHI


1-13696
ProfiUgl
2002-07-24 09:13
2002.08.05
Обращение из формы к компанентам расположенным на MDIChild форме


1-13592
Дядя Будда
2002-07-24 13:49
2002.08.05
Как в Dataset e DBGrid a позиционироваться на запись...


1-13613
MARcoDEN
2002-07-23 21:28
2002.08.05
Combining signed and unsigned types


1-13603
drunik
2002-07-24 14:49
2002.08.05
Этот долбаный Excel