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

Вниз

Сохранение параметров и настроек программы при её закрытии   Найти похожие ветки 

 
ronyn   (2005-07-07 00:33) [0]

Такой вопрос. У меня в программе, плеере, есть кнопка РАНДОМА музыки. Т.е. в беспорядочной очереди. Допустим я её нажимаю, она принимает нажатое состояние. Закрываю приложение…. Открываю. Кнопка вернулась в исходное положение. А например, в Windows Media Player все настройки сохраняются даже после закрытия программы. Как сделать так, что бы при закрытии программы настройки и параметры сохранялись? Заранее благодарен.


 
alex-drob   (2005-07-07 00:36) [1]

Сохраняй в реестр или Ini файл положение кнопки.


 
Viktop   (2005-07-07 00:40) [2]

ищи компонент dlFormSaver


 
ronyn   (2005-07-07 00:46) [3]

А как с ним работать?(dlFormSaver)


 
Viktop   (2005-07-07 03:58) [4]

А ты его нашёл?


 
rainy   (2005-07-07 06:29) [5]

Ага, интересно где


 
Viktop   (2005-07-07 06:49) [6]

http://dynamic.nm.ru/sources/comp/dlFormSaver.zip
Надеюсь установишь если что, пиши


 
Алхимик ©   (2005-07-07 14:51) [7]

Ставить компонент для запоминания состояния кнопки - не джедайский подход.
INI файл вполне подойдёт.

uses Inifiles,...;

procedure LoadParam;
procedure SaveParam;
var
   INI : TIniFile;
...
procedure LoadParam;
begin
   INI := TIniFile.Create(...);
   Botton.Down := INI.ReadBool("Мои кнопки","кнопка",true);
   INI.Free;
end;

procedure SaveParam;
begin
   INI := TIniFile.Create(...);
   INI.WriteBool("Мои кнопки","кнопка",Botton.Down);
   INI.Free;
end;


 
Viktop   (2005-07-07 15:55) [8]

>> Ставить компонент для запоминания состояния кнопки - не джедайский подход.
Невнимательно прочитал вопрос (Я). Конечно не надо ставить компонет из-за 1 кнопки. Другое дело, если элементов более 50


 
Алхимик ©   (2005-07-07 17:38) [9]

А ещё более джедайский подход - хранить все настройки в реестре.
Каждый юзер работает со своими персональными настройками - красота!


 
Viktop   (2005-07-07 20:52) [10]

to Алхимик
не люблю я проги, которые хранят информацию в реестре
>>Каждый юзер работает со своими персональными настройками
Проще в директории с прогой или на крайний случай в Documents and Settings хранить. Реестр - это святое. А многие проги часто за собой не убирают, как врочем и унинсталлеры.


 
Алхимик ©   (2005-07-08 13:38) [11]


> А многие проги часто за собой не убирают, как врочем и унинсталлеры.

Пишем прогу так, чтобы прибирала за собой.


 
Viktop   (2005-07-08 14:09) [12]

>>Пишем прогу так, чтобы прибирала за собой
Это про чужие проги :). Мои проги хранят настройки в ini-файлах. Их легко удалить даже непросвещённому юзеру


 
ronyn   (2005-07-08 15:25) [13]

to Алхимик
Я правильно я понимаю:
1.INI := TIniFile.Create(...);здесь вместо многоточия название файла например, FIleINI?
2.Что такое  Botton.Down? как это типизироват?
3.INI.ReadBool("Мои кнопки","кнопка",true);в "Мои кнопки" что писать? "кнопка" это конкретная кнопка? Например Button1?
Заранее благодарен.


 
Viktop   (2005-07-08 16:48) [14]

INI := TIniFile.Create(Путь+имя файла)
>>Что такое  Botton.Down? как это типизироват?
Если кнопка нажата, то True (проверяешь при загрузке программы и сохраняешь при выходе)
>>3. INI.ReadBool("Мои кнопки","кнопка",true);в "Мои кнопки" что писать? "кнопка" это конкретная кнопка? Например Button1?
Заранее благодарен.
"Мои кнопки" - название раздела (в файле настроек выглядит как [Мои кнопки])
"кнопка" - конкретная кнопка
В итоге получается такой файл:
[Мои кнопки]
Button1=true


 
evvcom ©   (2005-07-08 16:51) [15]


> Что такое  Botton.Down

Button - экземпляр класса TButton. Down его булево свойство.

> в "Мои кнопки" что писать?

А в help заглянуть что, совсем в лом? Имена секции и параметра.


 
ronyn   (2005-07-09 01:06) [16]

Всё вроди бы понятно. Но не даёт декларировать процедуру:
procedure LoadParam
Пишет в списке ошибок:
Unsatisfied forward or external declaration: "TForm1.LoadParam"-
Неудовлетворенная передовая или внешняя декларация: " TForm1. LoadParam "


 
Германн ©   (2005-07-09 02:02) [17]

2 ronyn   (09.07.05 01:06) [16]
Может сначала изучишь разницу между методами и процедурами?


 
Гаврила ©   (2005-07-09 02:33) [18]


> Unsatisfied forward or external declaration: "TForm1.LoadParam"-


В разделе implementation (там, где реализация) надо тоже писать
procedure TForm1.LoadParam();


 
Viktop   (2005-07-09 09:35) [19]

Покажи как ты оставляешь кнопку нажатой и отжимаешь её


 
ronyn   (2005-07-12 00:19) [20]

В разделе implementation (там, где реализация) надо тоже писать
procedure TForm1.LoadParam();
Вот здесь он мне говорит, что ожидается ";" или что-то в этом роде.



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

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

Наверх




Память: 0.51 MB
Время: 0.031 c
1-1121146525
Igor_M
2005-07-12 09:35
2005.07.31
RX lib


3-1119432152
new___
2005-06-22 13:22
2005.07.31
не найден Ehlib70.bpl


1-1121033361
Alekse
2005-07-11 02:09
2005.07.31
Дочерние окна из dll


1-1120996920
Толян
2005-07-10 16:02
2005.07.31
Работа и прослушка модема


1-1121078051
nastya
2005-07-11 14:34
2005.07.31
TMessage