Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.018 c
4-40728
k@rt
2003-08-08 15:58
2003.10.13
Меню и подменю


7-40695
anod
2003-07-29 11:18
2003.10.13
Как установить поля страницы?


6-40544
SergP
2003-08-13 18:16
2003.10.13
Прокси-Сервер. Как закрыть соединение с браузером.


14-40637
Дмитрий
2003-09-24 11:36
2003.10.13
Набор компонент.


1-40387
Zhouck
2003-09-29 11:38
2003.10.13
перехожу с С++B на Delphi. Как сделать в Delphi безразмерный масс