Главная страница
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.011 c
4-13861
z1
2002-05-27 17:04
2002.08.05
рабочий стол обновить


14-13796
Катерина
2002-07-10 12:23
2002.08.05
Help`ы. Крик души


1-13609
Filat
2002-07-24 19:59
2002.08.05
Вот уж не думал, что тут не будет работать.......


6-13761
star
2002-01-03 12:58
2002.08.05
Сетевые подключения ...


7-13829
ilysha
2002-05-22 09:09
2002.08.05
Где в реестре храниться указание на браузер по умолчению?