Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Избитый скролл / 25 сообщений из 26, страница 1 из 2
26.02.2004, 16:14
    #32422836
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Опять юЗвери заприхотовали....

на формочку покладена ленточная субформа с вертикальным скролбаром, на которой есть поле мемо и комбобокс...
Так вот, когда пробуют проскролить мемо или комбобокс, скролиться субформа... можно ли сделать так шоб скролилось имено мемо или комбобокс?

Доп. данные:
Отказаться от Ленточного вида и её скролбара никак низя юЗвери скорее откажуться от скрола в мемо и т.п.

Access'97

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
26.02.2004, 17:13
    #32423058
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Несовсем понятна проблема: если они не вошли в Memo или ComboBox, то крутится будет субформа, а как вовнутрь войдут этих элементов, то скрол должен начать нормально работать... В чем проблема? юзера не хотят лишний раз щелкнуть во внутрь?
...
Рейтинг: 0 / 0
26.02.2004, 17:16
    #32423068
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
видимо он хочет сказать что хорошо бы убирать скролбар у формы при входе в элемент управления чтобы ошибочно не тянуть за другой скролбар
...
Рейтинг: 0 / 0
26.02.2004, 17:18
    #32423077
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Подождем что он скажет...
...
Рейтинг: 0 / 0
26.02.2004, 17:19
    #32423080
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Видимо имеется в виду, что колесо мышки скролит форму, а не выпавший комбобокс
...
Рейтинг: 0 / 0
27.02.2004, 09:16
    #32423620
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
ЛП прав, аналогично с мемо...

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 09:23
    #32423626
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
И еще у тебя наверное 97-й аксес?
Ну тады ты попал.
В ХР уже все нормально скролится
...
Рейтинг: 0 / 0
27.02.2004, 09:24
    #32423631
Odess
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Передать фокус на мемо?
Пробовать лень ;-)
...
Рейтинг: 0 / 0
27.02.2004, 09:34
    #32423653
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
2 Odess
А антрересно где находиться фокус когда я в ентом мемо набираю текст?

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 09:46
    #32423668
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
с комбиком как таковой проблемы нет, надо на выпавшее поле навести мышу...
с мемо тяжелее... в нём как бы прокручиваеться текст, но вместе с тем и форма крутиться.

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 10:07
    #32423703
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
У меня нет Acc97 поэтому не могу проверить...

В качестве решения вижу такой вариант: делать сабклассинг формы, ловить поворот колесика мыши и проверять у кого фокус - если у Memo, то событие блокируем (чтобы оно до формы не дошло), а сами зная hWnd (через apiGetFocus) посылаем скрол лично Memo. Если эта собака событие скрол не понимает (как было у меня в Excel'е с ListBox), тоды посылаем PgUp/PgDn.

В Excel'е все это работает, а вот в Access как говорят зубры какие-то глюки начинаются если ставить сабклассинг на форму - не знаю, для Access97 не проверял и поэтому ничего сказать не могу, но если очень захочешь проверить, то я могу тебе подкинуть несложный код.
...
Рейтинг: 0 / 0
27.02.2004, 11:01
    #32423822
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
2 SergeySV
не покажешь как делать сабклассинг формы, к сожалению не очень врубаюсь как это делать в Access'e

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 11:43
    #32423914
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Ща свой модуль немного переделаю и выложу, там ничего сложного
...
Рейтинг: 0 / 0
27.02.2004, 12:39
    #32424045
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
буду благодарен

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 14:18
    #32424270
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Так, ну что - в принципе, жопа.

Сабклассинг действительно в Access'е немного напрягает и подвешивает Access, но я с таким сталкивался и в Excel. Проблема одна - это редактор VB. Если он открыт, то в процессе работы формы с сабклассином он начинает дергаться, т.е. ему видно передается управление (тоже самое если добавить еще Debug.Print - тоды вообще от него не отвяжешься). Вообщем если редактор не открывать и сразу запускать формы из токо что запущенной базы, то работать все будут номарольно. Т.е. проблемы возникают токо если ты хочешь еще по ходу работы занятся отладкой - тут такой финт не проходит, начинает большой дележ сообщений :)

Жопа собственно в другом - в Access вообще не приходит сообщение - WM_MouseWheel. Я следил через Spy++ за всеми окнами (а главное за основным), клики и движение мыши в очереди появляются, а вот на поворот колесика - тишина, ничего. Т.е. проблема в элементарном - неизвестно когда пользователь повернул колесико. Пока не понял еще в чем прикол...

Можно конечно ставить глобальный хук на мышь, наверное это тогда единственный вариант... чтобы узнать хоть когда колесико используют
...
Рейтинг: 0 / 0
27.02.2004, 14:23
    #32424282
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
мдяяя... вот за это я люблю Access......

хук - на куй, на куй, на куй...

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
27.02.2004, 15:01
    #32424395
Щ
Щ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
в Access вообще не приходит сообщение - WM_MouseWheel
да, но зато туда приходит сообщение WM_что-то_не_понмню_чего_SCROLL! В аксе просто вроде как колесико эмулирует нажание кнопочек на скроллбарах...
...
Рейтинг: 0 / 0
27.02.2004, 15:37
    #32424505
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Хуже, там скрола вообще нет. Были у меня пара подозрений на сообщения типа WM_USER и еще одно неопределенное сообщение под номером 118, но их кол-во не соответствует кол-ву поворотов колесика.
...
Рейтинг: 0 / 0
27.02.2004, 17:12
    #32424746
Ы
Ы
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Лог-файл Spy++ в момент отслеживания сообщений формы Акса:
<00117> 00000E24 R WM_PAINT
<00118> 00000E24 S .WM_CTLCOLORSCROLLBAR hdcSB:000050FE hwndSB:00000A10
<00119> 00000E24 R .WM_CTLCOLORSCROLLBAR hBrush:00000796
<00120> 00000E24 P WM_VSCROLL nScrollCode:SB_ENDSCROLL hwndScrollBar:00000A10
<00121> 00000E24 S WM_WINDOWPOSCHANGING lpwp:0065F794
<00122> 00000E24 P WM_VSCROLL nScrollCode:SB_LINEDOWN hwndScrollBar:00000A10
<00123> 00000E24 R WM_WINDOWPOSCHANGING
<00124> 00000E24 S WM_CHILDACTIVATE
<00125> 00000E24 S WM_PAINT hdc:00000000
<00126> 00000E24 S .WM_ERASEBKGND hdc:000050FE
<00127> 00000E24 R .WM_ERASEBKGND fErased:True
<00128> 00000E24 R WM_PAINT
<00129> 00000E24 S .WM_CTLCOLORSCROLLBAR hdcSB:00002536 hwndSB:00000A10
<00130> 00000E24 R .WM_CTLCOLORSCROLLBAR hBrush:00000796
<00131> 00000E24 P WM_VSCROLL nScrollCode:SB_ENDSCROLL hwndScrollBar:00000A10
<00132> 00000E24 R WM_CHILDACTIVATE
<00133> 00000E24 P WM_VSCROLL nScrollCode:SB_LINEDOWN hwndScrollBar:00000A10
...
Рейтинг: 0 / 0
27.02.2004, 17:15
    #32424757
Ь
Ь
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
мля... конечно еще и в момент скрола колесом мыши...
...
Рейтинг: 0 / 0
27.02.2004, 18:05
    #32424831
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Хмм, мой Spy что-ли чудит.... он не родной, я старый доставал, чтобы он работал, даже если на компе VB6 не стоял. Сейчас у меня 5.00.7010

Кстати запись в лог-файл у меня тоже не пашет, файл создает, а ничего туды не пишет :(
...
Рейтинг: 0 / 0
27.02.2004, 18:07
    #32424834
SergeySV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
В выходные дома покапаюсь, там сеструха VB.NET поставила и должен быть нормальный Spy++
...
Рейтинг: 0 / 0
27.02.2004, 19:27
    #32424923
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
можа придложть мышь Genius со своим софтом
она скролит то окно в котором сидит без доп клика. и передачи фокуса.
просто двинул куда нада и скроль
...
Рейтинг: 0 / 0
01.03.2004, 11:32
    #32425946
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
2 вадя
не катит... не собираюсь каждому мышь покупать..:) у нас Logitech

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
18.03.2004, 00:35
    #32446331
Антон К.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Избитый скролл
Мужчины, ну так что? Удалось ли победить переход от записи к записи а не от строки к сторке при прокрутке мыщки?
У меня вот такая же проблема:


В Аксес есть TextBox, который располагается в форме.
Если я его растяну. Сделаю большим. И отображу в нём поле с типом Memo, то мождет появиться возможность скролить. Вертикальную полосу прокрутки отобразить -- проблем нет. Но. Большинство пользователей привыкли крутить колесо мыши, что, несомненно, прекрасно и должно поощряться. К какому же недоумению приводит пользователей поведение экспертной системы (или настольной РСУБД) Ms Access 2002, осуществляя по прокрутке колеса мыши переход между записями, даже когда фокус имеет это самое здоровое текстовое поле.
Как можно переопределить поведние? Я вроде видел какое-то событие OnMOuseWheel но чего собсно с ним делать непонятно. Как переопрделеить поведение по Enter -- нашел, это рядом. А вот умееть ли Access 2000/2002 переопределять поведение по колесу
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Избитый скролл / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]