Гость
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Хранение трех разрядов в текстовом поле / 8 сообщений из 8, страница 1 из 1
19.08.2021, 20:20
    #40092017
bzums
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
Необходимо писать / читать в текст три разряда (три булевых значения).
Есть какое-то красивое решение?
В голову пришло вот такое (только установка и только два разряда):
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
  function SetProperty(x, i: integer): integer;
//x - текущее значение
//i - номер бита/свойства (сейчас только 1 или 2)
  begin
    case x of
      0: begin
        Result := i
      end;
      1: begin
        case i of
          1: Result := x;
          2: Result := x + 2;
        end;
      end;
      2: begin
        case i of
          1: Result := x + 1;
          2: Result := x;
        end;
      end;
      3: begin
        Result := x;
        end;
      end;
  end;


Решение на х.
Как за раз сделать?
Считать текущее занчение в binary, установить и выдать в тексте.
Спасибо.
...
Рейтинг: 0 / 0
19.08.2021, 21:52
    #40092054
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
bzums
Необходимо писать / читать в текст три разряда (три булевых значения).
Есть какое-то красивое решение?
В голову пришло вот такое (только установка и только два разряда)

Из приведённого кода вообще не понятно где что ЧИТАЕТСЯ/ПИШЕТСЯ, где ТЕКСТ и что за разряды.
...
Рейтинг: 0 / 0
19.08.2021, 22:04
    #40092059
Aleksandr Sharahov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
автор, гугли: delphi bitwise
...
Рейтинг: 0 / 0
20.08.2021, 10:14
    #40092131
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
const
flag0 = 1 shl 0;
flag1 = 1 shl 1;
flag2 = 1 shl 2;
...

flags := flag0 or flag1 or flag2
...
Рейтинг: 0 / 0
20.08.2021, 11:25
    #40092171
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
bzums,

как-то так
x = [0, 1, 2, 3]
y = [i, 0, 1, 0],
[i, 2, 0, 0]
...
Рейтинг: 0 / 0
20.08.2021, 19:33
    #40092355
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
ЯНХНП
Если нужен именно текст, то и храни как текст: "true,false,true" или "101"
...
Рейтинг: 0 / 0
21.08.2021, 03:04
    #40092385
northener
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
DimaBr
bzums
Необходимо писать / читать в текст три разряда (три булевых значения).
Есть какое-то красивое решение?
В голову пришло вот такое (только установка и только два разряда)

Из приведённого кода вообще не понятно где что ЧИТАЕТСЯ/ПИШЕТСЯ, где ТЕКСТ и что за разряды.

+100500
...
Рейтинг: 0 / 0
21.08.2021, 03:45
    #40092390
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение трех разрядов в текстовом поле
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Хранение трех разрядов в текстовом поле / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]