Вниз
Скачать: CL | DM;

Как значение типа множество преобразовать в число или строку?   Найти похожие ветки 

 
tria ©   (2003-10-03 11:27) [0]

Задача на примере: есть значение типа TFontStyles. Необходимо сохранить его в виде строки. Сейчас я делаю так:
var p:^byte;
fs:TFontStyles;
begin
p:=Addr(fs);
Result:=IntToStr(p^);
end;

Может есть какой-то более правильный путь?


 
Rem ©   (2003-10-03 11:42) [1]

А что в строке увидеть хочешь: соответствующие целочисленные значения или текстовые наименования из Delphi?


 
tria ©   (2003-10-03 11:50) [2]

Мне нужно сохранить в строку, чтобы затем прочитать и преобразовать опять в множество.
Что-то типа сохранения настроек.


 
Skier ©   (2003-10-03 11:53) [3]

Сохрани в таком виде - "0101"


 
tria ©   (2003-10-03 12:12) [4]

А как преобразовать к такому виду? И чем это лучше моего способа?


 
Skier ©   (2003-10-03 12:16) [5]

>tria © (03.10.03 12:12) [4]

> И чем это лучше моего способа?

Он хуже ! :)
Для твоего способа тебе нужно использовать работу с отдельными битами...


 
tria ©   (2003-10-03 12:21) [6]

Если честно, то непонял.
В посте (1) я получил строку. Чтобы преобразовать ее во множество, достаточно сделать следующее:
p:=Addr(fs);
p^:=StrToInt(s1);

Только я не знаю структуру, в которой Делфи хранит множества, т.е. надо знать когда объявить p:^byte, а когда p:^word.


 
Юрий Федоров ©   (2003-10-03 12:28) [7]

Наверняка это чьё-то свойство (например шрифта :-)))
тогда
можно использовать SetToString из TypInfo


 
tria ©   (2003-10-03 12:41) [8]

Юрий Федоров>
К сожалению не понял. И SetToString+F1 не помогло. Не могли бы чуть понятнее объяснить/подсказать, или набросок кода сделать?
Функцией TypInfo никогда не пользовался и не разбирался.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
7-40683
BlackIce
2003-08-01 14:31
2003.10.13
Регистрация драйвера


3-40251
ovu
2003-09-23 13:50
2003.10.13
глюк проекта bde+ms access97 + win2003


7-40705
acsoft
2003-07-30 07:25
2003.10.13
Экспорт из реестра


4-40750
Dolf
2003-08-08 22:07
2003.10.13
Edit в Html страницах


6-40553
this
2003-08-16 05:22
2003.10.13
TWebBrowser




   Наверх