| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Функционирование CSpinButtonCtrl |
| Автор: OlegIT 26.9.2006, 07:40 |
| Не понятно функционирование элемента CSpinButtonCtrl. Нажимаю на верхнюю кнопку несколько раз, счетчик в аргументе функции …::OnDeltaposChnum(…) увеличивается. Затем нажимаю на нижнюю кнопку. Счетчик опять один раз увеличивается на единицу, а потом начинает уменьшаться. Как-то не понятен это «один раз». Почему так? И как сделать так что бы верхняя кнопка только увеличивала значение счётчика, а нижняя только уменьшала? |
| Автор: zkv 26.9.2006, 21:22 | ||
я, простите, не понял, что за счетчик, но спином можно пользоваться, например, так:
|
| Автор: OlegIT 27.9.2006, 07:25 |
| Счётчик в той же структуре, что и pNMUpDown->iDelta, это pNMUpDown->iPos. Именно iPos ведёт себя так, как я описал. Скорей всего я сделаю именно так, как Вы рекомендуете, но хочется знать, по какой логике работает это самое iPos. |
| Автор: zkv 27.9.2006, 09:11 |
| посмотрел, действительно забавная штука этот iPos, у меня при нажатии на нижнюю кнопку происходит его инкремент, на верхнюю - декремент (если жали в одну сторону, а потом стали нажимать в другую, то его действительно "по инерции" заносит еще на единицу в предыдущем направлении), а отрицательных значений он не принимает вовсе. Интересно, зачем он такой нужен, может его по-битово надо как то рассматривать? MSDN молчит по этому поводу... |