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

Вниз

Сохранение параметров   Найти похожие ветки 

 
JamHole   (2004-04-28 15:35) [0]

Здрасте, уважаемые мастера. Я в делфи не профессионал, но экзамен сдавать надо... Как мне заставить делфи сохранить куда нибудь параметры программы (например шрифт редактора, размер формы и т.п.)? А потом, соответственно, их загрузить? Помогите, пожалуйста! Заранее спасибо.


 
Тимохов ©   (2004-04-28 15:36) [1]

Что конкретно не ясно?


 
Гаврила ©   (2004-04-28 15:37) [2]

Сохраняй в реестр, используй TRegistry


 
Igorek ©   (2004-04-28 15:44) [3]


> JamHole   (28.04.04 15:35)  

Тяни в ран-тайм весь RTTI из проги, загоняй куда-нибуть. При запуске/создании заставь формы читаться из твоего ресурса.
---
имхо


 
Jel ©   (2004-04-28 15:47) [4]


> Тяни в ран-тайм весь RTTI из проги, загоняй куда-нибуть.

Жестко :)


 
Андрей Сенченко ©   (2004-04-28 15:53) [5]

JamHole   (28.04.04 15:35)  

uses ...,IniFiles

...
var
MyIniFile : TIniFile

...
begin
 MyIniFile := TIniFile.Create(ChangeFileExt(paramstr(0),".ini"));
 ...

 MyIniFile.ReadString()
 MyIniFile.ReadInteger()
 MyIniFile.WriteString()
 MyIniFile.WriteInteger()

 ...
end;


+ F1 - там несложно всё.

Сдавай, студент :)


 
Андрей Сенченко ©   (2004-04-28 15:57) [6]

Гаврила ©   (28.04.04 15:37) [2]

Ну не нужно советовать студенту для экзаменационной программы лезть в реестр. Он же сам сказал, что программированием занимается только для сдачи сессии.
Вот полезет он сейчас и по незнанию порушит реестр на машине в вычислительном зале института - кому от этого лучше то будет ?

ИМХО

p.s.

Вы так и не ответили на мой вопрос к Вам заданный в
http://delphimaster.net/view/15-1082981418/

А очень бы хотелось


 
Гаврила ©   (2004-04-28 16:41) [7]

>>Андрей Сенченко ©   (28.04.04 15:57) [6]
Да какая, в принципе, разница в плане сложности - реестр или ини-файл?

А если это для сессии - наверняка спросят
"почему использовали ини-файлы, а не реестр"


 
Гаврила ©   (2004-04-28 16:47) [8]


> p.s.
>
> Вы так и не ответили на мой вопрос к Вам заданный в
> http://delphimaster.net/view/15-1082981418/
>
> А очень бы хотелось


Отсутствие try-finally
минус балл

конструкция

IniFileOld.WriteString(IniSecNew.Strings[CountSec]
                                    ,IniParNew.Strings[CountParNew]
                                    ,copy(IniValNew.Strings[CountParNew],pos("=",IniValNew.Strings[CountParNew])+1,length(IniValNew.Strings[CountParNew])-po  s("=",IniValNew.Strings[CountParNew]))

еще минус балл
вот так и получилось


 
bond   (2004-04-28 16:58) [9]

А я, чтобы не мучаться  создаю запись

Nastroiki = record
 fontname: TString;
 // нууу и т.д.
end;

затем объявляю заполняю эту записть соответствующими настройками и сохраняю её в файл:

F: file of Nastroiki;

Затем этот файл можно прочитать в переменную такогоже типа и ...


 
Андрей Сенченко ©   (2004-04-28 17:01) [10]

Гаврила ©   (28.04.04 16:41) [7]

Да какая, в принципе, разница в плане сложности - реестр или ини-файл?

В плане сложности разницы абсолютно никакой. Разницу я уже указал : Ошибка в использовании TRegistry.DeleteKey и TIniFile.DeleteKey приведет к разным последствиям на общественных машинах ( где и сдаются экзамены )

А если это для сессии - наверняка спросят
"почему использовали ини-файлы, а не реестр"


Шикарный ответ на 5 баллов - потому что если каждый из 500 студентов потока принесет сдавать программу, работающую с реестром - винду во всем машинном зале придется устанавливать заново.

По поводу p.s. - нельзя ли вернуться к указанной ветке ? У меня есть пара вопросов.


 
Anatoly Podgoretsky ©   (2004-04-28 17:09) [11]

Значит за реестр боишься, а не боишься, что таже программа сотрет скажем папку Виндоус?


 
Андрей Сенченко ©   (2004-04-28 17:11) [12]

Anatoly Podgoretsky ©   (28.04.04 17:09) [11]

а не боишься, что таже программа сотрет скажем папку Виндоус?

Используя TIniFile ? не боюсь.


 
Гаврила ©   (2004-04-28 17:28) [13]


> Используя TIniFile ? не боюсь.


А системынй ини-файл попортить ? :-))


 
Андрей Сенченко ©   (2004-04-28 18:32) [14]

Гаврила ©   (28.04.04 17:28) [13]

Сложнее.

TRegistry.deletekey( HKLM + пустая строка + Software, ... )
TIniFile.deletekey( C:\ + пустая строка + Software, ... )  

откуда возьмется пустая строка в студенческой программе, я думаю, Вы догадаетесь


 
Гаврила ©   (2004-04-28 21:24) [15]

>>Андрей Сенченко ©   (28.04.04 18:32) [14]

При считывании \ записи настроек он не будет вызывать deletekey.
Кстати, такой ответ на вопрос, как


> Шикарный ответ на 5 баллов - потому что если каждый из 500
> студентов потока принесет сдавать программу, работающую
> с реестром - винду во всем машинном зале придется устанавливать
> заново.


не прокатит однозначно.
И ему как минимум могут снизить оценку (например с 5 до 4)


> Igorek ©   (28.04.04 15:44) [3]
>
> > JamHole   (28.04.04 15:35)  
>
> Тяни в ран-тайм весь RTTI из проги, загоняй куда-нибуть.
> При запуске/создании заставь формы читаться из твоего ресурса.
> ---

Во первых, все тянуть - это перебор. Это если только компонент писать для этого (типа как в RX). Во вторых, если у автора ветки  возникает такой вопрос, какой тогда нафиг RTTI ? :-)))
> имхо


 
JamHole   (2004-05-01 10:24) [16]

спасибо всем... надеюсь сдам как-нибудь.



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

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

Наверх




Память: 0.51 MB
Время: 0.025 c
1-1083276815
Dumnok
2004-04-30 02:13
2004.05.16
Версия exe-файла


1-1083050035
Afonya
2004-04-27 11:13
2004.05.16
Создание собственного формата ввода/вывода данных компонента


1-1083426949
Leos
2004-05-01 19:55
2004.05.16
Форма поверх другой


3-1082615591
mixam
2004-04-22 10:33
2004.05.16
Lookup


3-1082356165
clover
2004-04-19 10:29
2004.05.16
Где можно скачать последнюю версию IBForms?