Перейти к содержанию
СофтФорум - всё о компьютерах и не только

MFC и все о нем


Рекомендуемые сообщения

Писал прогу на C++ простая вроде задачка, но чет я с ней повис ... в общем так : написать нужно пргу юзая MFC , основное требование использовать клавитуру. Написал .. вроде работает.. открывается окно, рисуется круг, через опр время меняет цвет и размер , т.е. радиус... но вот :bleh:

Проблема следующая : нимагу связать движние этого круга по окну с 4мя клавищами клавиатуры. все теже wsda =)

Помогите ктонибудь пожалуста!

Ссылка на комментарий
Поделиться на другие сайты

Перехвати WM_CHAR или WM_KEYDOWN и там в зависимости от кода клавиши и флагов изменяй координаты.... имхо, так должно получиться....

Ссылка на комментарий
Поделиться на другие сайты

Перехвати WM_CHAR или WM_KEYDOWN и там в зависимости от кода клавиши и флагов изменяй координаты.... имхо, так должно получиться....

Да это то я сделал, проблема в другом: перерисовка экрана с новыми координатами не удаляет предыдущую картинку, т.е. круг накладывается на предыдущий если я его двигаю, а должно быть так :

нажимается клавиша =>

переменной отвечающей за клавишу присваивается значение =>

эта переменная прибавляется к переменной координат х или у, либо отнимаетсмя взависимости от кода клавиши =>

удаляться изображение из окна =>

перерисовка окна(обновление чтоли :D )

Но она просто либо чистит окно после прорисовки круга, т.е. круга нет ( ; либо не очищает вообще, т.е. круга опять нет.

пробовал через Invalidate(); вставлял куда попало :) но не работает :D

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...