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

Форум: MS ACCESS

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

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

 
 

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

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

тема: userform
 
 автор: Силblч   (21.09.2011 в 17:29)   личное сообщение
59 Кб.
 
 

1. вот что получилось в итоге :)
2. если нажимать клавиши - стрелки вверх-вниз, происходит переход по контролам соответсвенно.
я эти события никак не отслеживаю, только селектор записи рисую....
но вот в чем проблем :)

почему то если стрелками - перескакивает через одну запись
ничего не могу понять...

подскажете?

  Ответить  
 
 автор: Силblч   (21.09.2011 в 17:40)   личное сообщение
 
 

ыыы, спасибо, разобрался :)
устал просто, протупил в одном месте

  Ответить  
 
 автор: Lukas   (21.09.2011 в 18:13)   личное сообщение
71 Кб.
 
 

Что-то мне это сильно напоминает =>
:)

  Ответить  
 
 автор: Силblч   (21.09.2011 в 18:16)   личное сообщение
 
 

принципы везде одинаковы :)) ыыы
вот продолжаю бороться с трудностями

поставил выводить название контрола на событии КейДаун (#1) и КейАп(#2)
#1: txtValue1
#2: txtValue3

по ходу получилось, что нажал клавишу вниз на одном контроле(ті же помнишь, там классі использую),
а отжал кнопку на другом я потерялся

  Ответить  
 
 автор: Силblч   (21.09.2011 в 18:22)   личное сообщение
 
 

ппц
еще раз проверил - так и происходит
нажал на одном классе, отжалось на другом
ЧЕРЕЗ ОДНУ %)
если активной была первая запись то скакать будет по нечетным, если перейти на вторую мышкой и начать клавишами двигаться - то будет скакать по четным :) шо за?

  Ответить  
 
 автор: Lukas   (21.09.2011 в 18:25)   личное сообщение
 
 

Там на заднем фоне деревце видать.
Может стоит его-же вместо самописного грида пользовать?

  Ответить  
 
 автор: Силblч   (21.09.2011 в 18:44)   личное сообщение
 
 

нельзя
да и грид уже воркает :) но как то... странно, я бы сказал :)

так тебе есть шо сказать по проблеме? :) не могу найти :/ в чем собака порылась
пока что

  Ответить  
 
 автор: Lukas   (21.09.2011 в 19:04)   личное сообщение
 
 

Игры Set Focus-а, подозреваю.
Отсюда плохо видно. :(
Там исчо есть сокрытие контрола, имеющего фокус, если не ошибаюсть. Не?

  Ответить  
 
 автор: Силblч   (21.09.2011 в 21:40)   личное сообщение
 
 

убрал фокусы , однако
сокрытие контрола есть
но так же есть и проверка, когда можно скрывать, а когда нет - событие на клавиши навигации не распространяются на инициализацию контрола редактирования

подозреваю, что что-то с настройками фрэма, в котором живут контролы, и с ними тоже :)
завтра поколопаю сю скалу :)

  Ответить  
 
 автор: Lukas   (21.09.2011 в 18:23)   личное сообщение
 
 

:)
Это нормально ...Это нормально ...Это нормально ...

  Ответить  
 
 автор: Силblч   (22.09.2011 в 10:39)   личное сообщение
 
 

вроде бы нае поборол!


Private Sub oTxtBox_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
On Error GoTo err123
Dim rowid&, offset%
    '-- перехват управления стрелками
    If KeyCode = 40 Or KeyCode = 38 Then
        rowid = Replace(oTxtBox.name, "txtValue", "") * 1
        Select Case KeyCode
        Case 38: offset = -1
        Case 40: offset = 1
        Case Else
            offset = 0
        End Select
        KeyCode = 0
        If isControl("txtValue" & (rowid + offset)) Then
            frmCaller.Controls("txtValue" & (rowid + offset)).SetFocus
            Call SetRowSelector(rowid + offset)
        End If
    End If
    Exit Sub
err123:
    MsgBox Error, , "TextBox #" & Err
    Exit Sub
End Sub



з.ы. бонус трек
- Все ГАИшники спрашивают: «Ты пил?» Хоть бы один поинтересовался: «Ты ел?»

- Позитивный человек - это тот, кого послали «нахрен», а он оттуда вернулся отдохнувший и с магнитиками.

- Страх - это когда трамвай, зацепивший «порше-кайен», скрывается во дворах.

  Ответить  
 
 автор: Lukas   (22.09.2011 в 18:47)   личное сообщение
 
 

Ммм....

rowid = Replace(oTxtBox.name, "txtValue", "") * 1 

Небыстрая эта история.
Может rowid сразу в тег oTxtBox пихнуть, а затем пользовать?

  Ответить  
 
 автор: Силblч   (23.09.2011 в 09:14)   личное сообщение
 
 

да, я уже исправил - через жлобальную переменную формы отслеживаю rowid

короче, форма табличная вроде вырисовывается, но смотрю я , что могу не успеть всё наFUIячить :)
поэтому принял волевое решение использовать ListView или даже может быть ListBox
рамки задачи позволяют :) тогда этот сабклассинг сейчас не нужен будет, можно отложить до лучших времен....

я уже забыл, ListView позволяет в себе TreeView построить? а выпадающие списки? а кнопучки?
в принципе без этого тоже можно обойтись :) в рамках поставленной задачи

  Ответить  
 
 автор: Lukas   (23.09.2011 в 13:20)   личное сообщение
 
 

Ответы: Нет, нет, нет. Если не ошибаюсь. :)

  Ответить  
 
 автор: Силblч   (23.09.2011 в 14:22)   личное сообщение
 
 

та да :) уже попробовал.... да и хрен с ними

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