Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Использование клавиатуры и Image, Проблемма с Image 
:(
    Опции темы
ZAlexWell
  Дата 9.8.2006, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 9.8.2006

Репутация: нет
Всего: нет



Люди, помогите. Решил создать игру на DirectX 7. Написал код:

Код

Dim dx As New DirectX7
Dim di As DirectInput
Dim diDEV As DirectInputDevice
Dim diState As DIKEYBOARDSTATE
Dim iKeyCounter As Integer

Private Sub Form_Load()
    Set di = dx.DirectInputCreate()
    If Err.Number <> 0 Then
        MsgBox "Error starting Direct Input, please make sure you have DirectX installed", vbApplicationModal
        End
    End If

    Set diDEV = di.CreateDevice("GUID_SysKeyboard") 'Attach it to the Keyboard

    diDEV.SetCommonDataFormat DIFORMAT_KEYBOARD
    diDEV.SetCooperativeLevel Me.hWnd, DISCL_BACKGROUND Or DISCL_NONEXCLUSIVE
    Me.Show

    diDEV.Acquire

    tmrKey.Interval = 30

    tmrKey.Enabled = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
    diDEV.Unacquire
End Sub

Private Sub Image1_Click()

End Sub

Private Sub tmrKey_Timer()
    diDEV.GetDeviceStateKeyboard diState

    For iKeyCounter = 0 To 255
        If diState.Key(iKeyCounter) <> 0 Then
            If iKeyCounter = 205 Then
                Image1.Left = Image1.Left + 120
            End If
        End If
    Next
    DoEvents
End Sub


Включаю игру и вижу, что если нажать на клавишу "Вправо" и зажать её, то картинка перемещается но мигет. Как устранить мигание?

Это сообщение отредактировал(а) ZAlexWell - 10.8.2006, 10:41
PM MAIL   Вверх
cardinal
Дата 11.8.2006, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



см. Double Buffer

p.s. купи себе книгу на эту тему, игры с бухты барахты не пишутся...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0396 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.