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

Вниз

сохранение пользовательского интерфейса   Найти похожие ветки 

 
Nataliya   (2002-02-18 10:26) [0]

Please, help. Как сохранить пользовательский интерфейс приложения после его закрытия.


 
Serghei   (2002-02-18 10:55) [1]

Запиши свои настройки в ini файл (ы)! При запуске читай оттуда нужные настройки!
Удачи!
Сорри если не правильно понял вопрос!


 
Анонимщик ©   (2002-02-18 10:56) [2]

Нужно либо писать параметры в какой-нибудь ini-файл, либо сохранять всю форму в файловый поток (FileStrem.Write(MyForm)), а потом загружать в рантайме, но в последнем случае нужно еще и обеспечить сохранение функциональности для обработки событий.


 
kronprince ©   (2002-02-18 11:02) [3]

Напиши подробнее, pls.

Если внешний вид форм то пользуйся чем-то вроде FormStorage из RXTools или напиши собственые функции которые параметры нужных тебе объектов сохраняли/загружали в реестр/INI-файл


 
[NIKEL] ©   (2002-02-18 11:17) [4]

сохраняй всё что надо в реестре - легко и без напряг :)


 
IronHawk ©   (2002-02-18 11:39) [5]

РЕЕСТР ЭТО СТРЁМНО !
Может рухнуть или при востановлении затереться его часть с данными о пользовательском интерфейсе!
INI-файлы самый клас !

Кому надо могу дать реально-безглючно работающий код !




 
[NIKEL] ©   (2002-02-18 11:51) [6]

INI - отстой, их использовали в WIN 3.1 пережиток прошлого :)
а если руки растут откуда надо то реестр самое то... сама MS рекомендует использовать именно реестр - реально подгатовленная база для использования, удобнее придумать нельзя...


 
IronHawk ©   (2002-02-18 12:36) [7]

>>> [NIKEL] ©
сразу видно что ты с виндами неработал !


 
[NIKEL] ©   (2002-02-18 13:12) [8]

>>> IronHawk
обоснуй


 
Фэ ©   (2002-02-18 13:16) [9]

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


 
[NIKEL] ©   (2002-02-18 13:28) [10]

что значит "если слетит реестр то и все слетит" ?
Можно также сказать: а если "слетит" INI файл (что более вероятнее (ничайно стерли)) ?
Если грамотно подойти к реестру, то при сбоях можно реализовать положение по умолчанию и снова востановить ключи, всё можно коректно обработать, любой слёт.

На сколько меньше размер? размер - понятие относительное...
подготовленный Reg файл тоже можно раздавать пользователям

А вот то что лишние файлы (INI) появляються - это факт.


 
Alx2 ©   (2002-02-18 13:33) [11]

Короче говоря, получается, что хранить надо в ресурсах, внутри exeшника :)


 
Digitman ©   (2002-02-18 13:47) [12]

>Nataliya
Приведи пример, какие конкретные настройки UI нужно сохранять


 
IronHawk ©   (2002-02-18 13:58) [13]

>>> [NIKEL] ©
Обосновываю:
Реестр каждый раз резервируеться или проверяеться,
незавершенные ветки удаляються, либо востанавливаються из предыдущей копии !
Вовремя оборотов с реестром когда программа даёт - глюк, во время сохранения параметров пользовательского интерфейса это весело как правило это приводит к завершению задачи через RESET
параметры либо обнуляються либо несохраняються !
А ПОЛЬЗОВАТЕЛИ ЕСТЬ РАЗНЫЕ И МОГУТ ВЫКИДЫВАТЬ ТАКИЕ ВЕСЧИ ВО ВРЕМЯ РАБОТЫ ПРОГИ С РЕЕСТРОМ, ЧТО ПРЕДСТАВЛЕНИЮ НЕПОДЛЕЖИТ !
INI-файл никому немешающая не портящая ничего файлина...
ВЫВОД !
ИНИ - Старо но актуальности нетеряет !


 
vuk ©   (2002-02-18 14:19) [14]

Кстати, о птичках. Сейчас, вот, дописываю один компонент как раз для сохранения настроек приложения. :o) А-ля FormStorage из RxLib, только покруче будет - с фреймами нормально работает, хранить данные, потенциально, можно не только в реестре и .ini и т.д. и т.п. Интересно кому?


 
IronHawk ©   (2002-02-18 14:27) [15]

>>> vuk ©
Скинь на мыло гляну !


 
vuk ©   (2002-02-18 14:39) [16]

to IronHawk:
Чуть позже, OK? Кое-что надо протестировать...

А вообще, я в ближайшее время собираюсь его на "Полигон" в "Королевстве Delphi" выложить.


 
Awex ©   (2002-02-18 15:23) [17]

2vuk>
>Кстати, о птичках. Сейчас, вот, дописываю один компонент как >раз для сохранения настроек приложения. :o) А-ля FormStorage из >RxLib, только покруче будет - с фреймами нормально работает, >хранить данные, потенциально, можно не только в реестре и .ini >и т.д. и т.п. Интересно кому?

Да, даже очень.
Позволь идейку еще подкинуть: Нужно дать возможность сохраненения настроек в BLOB поле.
То есть, зачем это нужно - каждый юзер идентифицируется в системе, и соответственно его настройки храняться в БД, и если он переходит на другую машину (и регистрируется под своим именеми), его персональные настройки востанавливаются.
По моему будет очень удобно.






 
vuk ©   (2002-02-18 15:33) [18]

>Нужно дать возможность сохраненения настроек в BLOB поле.
Я об этом думал. Пришел к такому выводу - у каждого своя структура БД и свои приемы работы с БД, и поэтому сделать универсальную схему, которая бы удовлетворяла всех просто невозможно. Поэтому у меня подход другой.
Компоненты, отвечающие за то, где хранятся данные вынесены за пределы того компонента, который работает со свойствами компонентов, поэтому можно достаточно легко сделать своего наследника под свои нужды и хранить данные где угодно. У меня на данный момент реализованы только реестр, .ini а также компонент, где для каждой операции можно назначить свой обработчик. Видимо потом, по мере необходимости, будет сделано сохранение в XML...


 
Awex ©   (2002-02-18 15:43) [19]

>vuk
Ok.
Когда будет доступна бетта версия для тестирования ? :))))



 
vuk ©   (2002-02-18 15:52) [20]

>Когда будет доступна бетта версия для тестирования ?
Я сейчас вношу некоторые изменения, по-мелочи. Потом надо будет протестировать, подправить пример использования. Я думаю, что либо сегодня к вечеру, либо завтра.


 
Awex ©   (2002-02-18 15:58) [21]

Ok.
Ждем.


 
vuk ©   (2002-02-19 17:05) [22]

Ну что, остались еще желающие побыть бета-тестерами? :o)


 
IronHawk ©   (2002-02-19 17:09) [23]


> vuk © (19.02.02 17:05)
> Ну что, остались еще желающие побыть бета-тестерами? :o)

АГА !
ВАЛЯЙ !



 
oomneeq ©   (2002-02-19 17:33) [24]

Вопрос очень близок к соседнему топку
http://delphi.mastak.com/cgi-bin/forum.pl?ook=1&id=1014112454&n=0
там я ссылку дал на правильную статейку.
Поможет


 
oomneeq ©   (2002-02-19 17:35) [25]

Пардон, буква выпала
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1014112454&n=0


 
Vuk ©   (2002-02-19 17:44) [26]

Ушло на IronHawk@ukrpost.net.
Теперь некоторые пояснения. В компонентах используется такая немного нестандартная вещь, как обработчики событий в классах, унаследованых от TCollectionItem. Тонкость такая - в IDE Delphi5 есть баг, из-за которого в случае назначения такого обработчика невозможно создать наследника от формы или поместить фрейм на форму. Поэтому по-умолчанию для Delphi5 элементы коллекций обработчиков не имеют, но если это все же необходимо, то это можно изменить при помощи двух переменных компилятора CollectionItemEvents и D5BUGWORKAROUND в файле pstgver.inc

В Delphi6 этот баг устранен.


 
Awex ©   (2002-02-20 14:01) [27]

Vuk>
И мне если можно тоже.


 
vuk ©   (2002-02-20 14:09) [28]

Ушло.


 
oomneeq ©   (2002-02-20 15:37) [29]

2 vuk
Ecли под 5ю дельфию, то и мне интересно.


 
vuk ©   (2002-02-20 15:41) [30]

ушло.


 
deleon   (2002-02-21 15:27) [31]

Советую для хранения настроек TDataFile:
можно хранить что угодно, начиная со строк неограниченной длины и заканчивая байтовыми массивами!
http://www.dbwork.kuban.ru


 
Deus   (2002-02-21 15:30) [32]

2vuk:
Очень было бы здорово иметь возможность шифрования сохранённых данных. Могу покинуть модуль с двумя простенькими функциями шифрования/дешифрования.


 
Deus   (2002-02-21 15:31) [33]

2vuk:
Очень было бы здорово иметь возможность шифрования сохранённых данных. Могу подкинуть модуль с двумя простенькими функциями шифрования/дешифрования.


 
vuk ©   (2002-02-21 16:19) [34]

to deleon & Deus:
Угодить всем невозможно (тот же самый случай, что и с сохранением в БД), поэтому еще раз повторяю - для построения сохранения в любой формат достаточно построить класс-наследник от абстрактного класса-хранилища и переопределить там несколько методов (не более 10) или использовать компонент, где все операции загрузки/сохранения сделаны через обработчики.




 
Deus   (2002-02-21 16:45) [35]

2vuk:
Где тут берут в бета-тестеры? :))
когда будет ready to test, пришли мне на hs@fromru.com
(хотя наверно проще будет выложить где-нть и ссылку в конфу кинуть)


 
deleon   (2002-02-21 17:11) [36]

Кстати TDataFile - шифрует данные!


 
Deus   (2002-02-21 17:15) [37]

2deleon:
Просто ксорит...


 
vuk ©   (2002-02-21 17:30) [38]

to Deus:
Я хочу все получше отладить сам, а потом уже в широкий доступ выкладывать, я уже об этом писал. А тем, кто захотел потестировать, я исходники выслал. Вам тоже. :o)



 
Deus   (2002-02-21 17:38) [39]

2Vuk:
Ок, спасибо!



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

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

Наверх




Память: 0.56 MB
Время: 0.017 c
3-9381
pusrg
2002-03-11 20:48
2002.04.04
Сортировка кешированной таблицы


4-9670
Yonic
2002-02-04 01:22
2002.04.04
Сообщения ListBox у


1-9577
Kon
2002-03-23 01:50
2002.04.04
Сохранение данных в EXE


1-9509
VID
2002-03-23 01:43
2002.04.04
Ресурс повреждён


1-9584
snoup
2002-03-23 20:13
2002.04.04
Как изменить шрифт у заголовка окна?