Как использовать трекбар с разным представлением данных? - PullRequest
0 голосов
/ 12 ноября 2018

Вопрос в том, как получить данные из трекбара, например, шестнадцатеричные числа. Что мне нужно, так это получить значения от 1 до 64 на стороне поездки, а на другой стороне (от -1 до -64) будут данные, представляющие данные от 81 до E4.
Я установил свой трекбар на мин -64 и макс 64 и установил значение по умолчанию на 0. Я планирую использовать условие If вроде этого:

if (trackBar1.Value <= -1)
{
    PM = trackBar1.Value; //any magic code to convert my value
}
else
{
    PM = trackBar1.Value;
}

Есть ли способы, как это сделать?

Ответы [ 2 ]

0 голосов
/ 04 апреля 2019

Правильный путь для меня был:

PM = Convert.ToByte(trackBar1.Value);

Спасибо за помощь каждому. :-)

0 голосов
/ 12 ноября 2018

Если я правильно понимаю ваш вопрос, у вас есть трек-бар, значения которого варьируются от -64 до +64. Если значение трекбара ниже 0, вы хотите вернуть цифры от 0x81 до 0xE4, а если значение трекбара выше 0, вы хотите вернуть цифры от 1 до 64 как обычно.

В этом случае это простой случай выполнения другого вычисления в зависимости от того, является ли значение ниже 0 или выше:

if (trackBar1.Value <= -1)
{
    PM = 0xE5 + trackBar1.Value;
}
else
{
    PM = trackBar1.Value;
}

Если значение ниже 0, это добавит отрицательное значение к 0xE5, что даст вам соответствующее значение в диапазоне от 0x81 до 0xE4.

...