Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Движение курсора вверх или вниз по ленточной форме Access2000
 
 автор: Sheyh   (05.03.2007 в 09:02)   личное сообщение
 
 

Хочу чтобы курсор бегал вверх, вниз в ленточной форме (как это происходит в форме в виде таблицы) при нажатии одноименных кнопок клавиатуры. Как это зделать???

  Ответить  
 
 автор: osmor   (05.03.2007 в 09:22)   личное сообщение
 
 


Private Sub Form_Load()
      Me.KeyPreview = True
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
                             Select Case KeyCode
                                 Case vbKeyUp
                                     Call MoveMe(True)
                                 Case vbKeyDown
                                     Call MoveMe(False)
                                 Case Else
                             End Select
End Sub

  Ответить  
 
 автор: KrukVN   (05.03.2007 в 10:36)   личное сообщение
 
 

Хитрый какой
А где call MoveMe?

  Ответить  
 
 автор: osmor   (05.03.2007 в 11:13)   личное сообщение
 
 


Ща
ВОт она:

Sub MoveMe(varUp As Boolean)
                             On Error Resume Next
                             Me.RecordsetClone.Bookmark = Me.Bookmark
                             If varUp Then
                                 Me.RecordsetClone.MovePrevious
                             Else
                                 Me.RecordsetClone.MoveNext
                             End If
                             Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub


Но вообще лучше вот так:



Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo KeyDownERR
If KeyCode = 38 Then       'Нажата клавиша ВВЕРХ
     DoCmd.GoToRecord , , acPrevious 
ElseIf KeyCode = 40 Then   'Нажата клавиша ВНИЗ
     DoCmd.GoToRecord , , acNext
End If
Exit Sub 

KeyDownERR:
Err = 0 
End Sub

  Ответить  
 
 автор: Explorer   (05.03.2007 в 11:49)   личное сообщение
 
 

  Ответить  
 
 автор: Pasat   (19.03.2007 в 23:40)   личное сообщение
 
 

Хочу чтобы курсор бегал вправо, влево в ленточной форме при нажатии одноименных кнопок клавиатуры. Как это зделать???
Но вправо только если курсор в конце теста поля,
а влево если курсор в начале теста поля (как это происходит в форме в виде таблицы)

  Ответить  
 
 автор: KrukVN   (20.03.2007 в 09:09)   личное сообщение
 
 

Не хочу быть столбовою дворянкой, а хочу быть царицей морскою...
Ну дык тож писать нужно

  Ответить  
 
 автор: Pasat   (20.03.2007 в 10:36)   личное сообщение
 
 

Что писать нужно это и ежу понятно.
Ворпрос в том можно ли это сделать так же просто как вверх и вниз. Если это не сложный код был бы признателен за конкретный пример

  Ответить  
 
 автор: KrukVN   (20.03.2007 в 11:36)   личное сообщение
 
 

легко:

смотрим на каком контроле стоим (его тип)

и ежели это текстбокс или комбобокс, то смотрим селстарт контрола
далее просто:
если селстарт = 1, то ежели нажата стрелка влево переводим на контрол слева
если селстарт = лен(контрол.валуе ор контрол.текст - от ситуации), то ежели нажата стрелка вправо переводим на контрол справа :)

если другой тип контрола, то просто переводим фокус

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

писать надо

  Ответить  
 
 автор: KrukVN   (20.03.2007 в 23:43)   личное сообщение
 
 

Да, кстати, совсем забыл... я же писал уже подобное
посмотрите здесь: http://am.rusimport.ru/msaccess/topic.aspx?ID=579
Там есть ответ на Ваш вопрос

  Ответить  
 
 автор: Pasat   (21.03.2007 в 20:08)   личное сообщение
 
 

Смотреть в: NetAddress.rar ???

  Ответить  
 
 автор: KrukVN   (21.03.2007 в 22:55)   личное сообщение
 
 

Yes!
Там осуществляется переход влево и вправо между четырмя контролами

  Ответить  
 
 автор: Pasat   (22.03.2007 в 09:29)   личное сообщение
 
 

Спасибо буду разбираться

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList