![]() |
|
|
![]()
|
|
| Kirow |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 1.11.2007 Репутация: нет Всего: нет |
В общем в чем суть... есть Spin Control, есть Edit Control, влепил в Edit Spin Control, добавил стандартный обработчик(который мне совершенно не понятен)
И теперь по нажатию стрелок спина, у меня в Edit'e изменяются числа в поставленных мною рамках(1...10).(спин при этом стоит в режиме Buddy Integer) Но, хотелось бы чтобы в Edit'e перед числом была еще и буква х. Иными словами, как сделать чтобы в Edit'e отображались строки х1....х10 используя Buddy Integer?Либо как в обработчике проверять нажата ли кнопка вверх или кнопка вниз? P.S. было бы не плохо объяснить мне что в обработчике вообще написано. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
А в нем ничего и не написано - это пустышка, заготовка, которая ничего не делает.
Если эдит в режиме Integer, то вряд ли в нем будут отображаться всякие "x". Ты ведь не шестнадцатеричные числа имеешь в виду, а что-то типа умножения, масштаб? В любом случае, можно попробовать ловить уведомление эдита CN_UNDATE и немного менять строку. Или, еще лучше, делать все руками (разобраться, что там спин посылает эдиту). Но вряд ли ты на данном этапе это сможешь, если просишь объяснить "что вообще здесь написано". Удовлетворись пока стандартным поведением, а потом, когда получше разберешься, сделаешь как хочешь. -------------------- ... |
|||
|
||||
| Kirow |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 1.11.2007 Репутация: нет Всего: нет |
просил объяснить потому что нигде внятно не написано...распробовал все с помощью интелисенса и простых опытов.
решается все банально просто(хоть и немного не так как хотелось), просто нужно было найти где находится дельта в обработчике. Объявил глобально интовскую переменную, убрал для Spin Control свойство Buddy Integer и дописал обработчик
В идеале конечно было бы без глобальной переменной, а с включенным Buddy Integer и чтобы в обработчике считывало то что написано в эдите и дописывал к нему "х"(т.к. это избавит от двух проверок и 1 дополнительной переменной - экономия на лицо), но почему-то пока что не получается. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Скорее всего, когда Buddy Integer, эдиту добавляется стиль Integer (не помню как точно), который запрещает все кроме цифр. Все у тебя нормально получилось, кроме глобальной переменной, но и ее можно убрать - сделай членом класса-диалога и все. Какая экономия? Либо ты делаешь как тебе надо ручками, либо где-то во фреймворке стандартно, но суть примерно одинакова. Ну проверки немного странно у тебя написаны (чуть-чуть избыточно), но это слезы... -------------------- ... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |