Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Полоса прокрутки и наша новая мышь! / 19 сообщений из 19, страница 1 из 1
18.05.2004, 13:52
    #32522158
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Я думаю те стандартные компоненты, которые сразу идут с VB6 были написаны, когда колесо прокрутки мыши еще не могли себе даже представить! =) Но ведь как им удобно пользоваться! А вот как это замечательное изобретение использовать в собственных проектах на VB6???
Может кто-нибудь знает какой-нибудь хинт?
...
Рейтинг: 0 / 0
18.05.2004, 15:37
    #32522495
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Драйвера родные на хвостатых с колесиками ставьте!
...
Рейтинг: 0 / 0
19.05.2004, 06:21
    #32523122
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Вообще-то IE6, Word и т.д. у меня работают с колесом нормально. Я вот думаю - может просто компонентами надо другими пользоваться? Или компоненты самому именно на Сях писать?
...
Рейтинг: 0 / 0
19.05.2004, 08:48
    #32523185
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Пиши родной , пиши!
...
Рейтинг: 0 / 0
19.05.2004, 14:46
    #32524067
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Кстати ListView в этом плане оказался поуступчивее =) А вот DataGrid....
...
Рейтинг: 0 / 0
21.05.2004, 14:51
    #32528312
Andy154
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
автор
Драйвера родные на хвостатых с колесиками ставьте!


Необязательно родные :).

Я поставил на Hp мышь дровишки от A4Tech.

Hp превратился в A4 :).
...
Рейтинг: 0 / 0
24.05.2004, 21:58
    #32531510
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Чья то умная голова ( не моя ) советовала ставить мелкософтовский драйвер от intellimouse. МНе помогло.
...
Рейтинг: 0 / 0
25.05.2004, 00:25
    #32531587
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
2 vit
DataGrid рачком поставим, но скроллиться, блин, заставим:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
modScroll.bas
Option Explicit

Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Public Const GWL_WNDPROC = -4

Public gDataList As MSDataGridLib.DataGrid

Public lpPrevWndProc As Long

Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    On Error Resume Next
    If uMsg = 522 Then
        If wParam > 0 Then
            gDataList.Scroll 0, -1
        Else
            gDataList.Scroll 0, 1
        End If
        Debug.Print wParam, lParam
    End If
    WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lParam)
End Function

Form

Private Sub Form_Load()
    Set gDataList = Me.dgList
    lpPrevWndProc = SetWindowLong(dgList.hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub

Private Sub Form_Unload(Cancel As Integer)
    SetWindowLong dgList.hwnd, GWL_WNDPROC, lpPrevWndProc
End Sub
...
Рейтинг: 0 / 0
26.05.2004, 06:24
    #32533680
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Antonariy2 vit
DataGrid рачком поставим, но скроллиться, блин, заставим:

Вот спасибо, дельным советом помог, а не всякими драйверами для мыши, которая у меня и так работает. Код обязательно пригодится в последующих проектах. Ещё раз спасибо БОЛЬШОЕ!
...
Рейтинг: 0 / 0
26.05.2004, 11:24
    #32534038
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Особо губы не раскатывай, скроллинг небыстрый и дерганый.
По идее с нажатым шифтом скроллируется раз в 10 быстрее, попробуй половить значения wparam и lparam. Если наткнешься на что-то полезное, ставь соответственно gDataList.Scroll 0, +-10
...
Рейтинг: 0 / 0
26.05.2004, 11:47
    #32534098
Processor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
DataGrid рачком поставим, но скроллиться, блин, заставим
А VideoSoft'овский грид (vsFlexGrid) скроллируется без "задних" (и передних тоже) мыслей...
...
Рейтинг: 0 / 0
26.05.2004, 12:13
    #32534187
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Пока курил, придумал лечение от дерганья. Оно скорее всего происходит из-за того, что оконная процедура юзает публичную объектную переменную. Можно этого избежать:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
'
Public pObj As Long
'
Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Dim X As Integer
Dim dlist As Object
    On Error Resume Next
    If uMsg = 522 Then
        CopyMemory dlist, pObj, Len(pObj)
        If wParam > 0 Then
            dlist.Scroll 0, -1
        Else
            dlist.Scroll 0, 1
        End If
        Set dlist = Nothing
    End If
    WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lParam)
End Function

Код: plaintext
1.
2.
3.
4.
Private Sub Form_Load()
    pObj = ObjPtr(dgList)
    lpPrevWndProc = SetWindowLong(dgList.hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub
...
Рейтинг: 0 / 0
26.05.2004, 12:14
    #32534192
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
В догонку: есть способ скроллировать окна чужих поцессов :D
...
Рейтинг: 0 / 0
26.05.2004, 14:55
    #32534767
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
2 Antonariy
Проверил код первого твоего сообщения для 98-й винды и немного расстроился... Не пашет, да ещё и валит VB =( Хотя в >=Win2k работает...
Есть ли мысли по этому поводу?
...
Рейтинг: 0 / 0
26.05.2004, 15:20
    #32534854
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Под 98 не пробовал, каюсь. Попробуй 2й способ, возможно это как раз из-за gDataList.
...
Рейтинг: 0 / 0
27.05.2004, 06:15
    #32535746
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
Попробуй 2й способ, возможно это как раз из-за gDataList.
Windows98:
В режиме проекта DataGrid даже скроллиться начал, но потом опять убил VB6. Попробовал скомпилить - завесил наглухо систему, пришлось перезагружаться.
Может существует какая-то несовместимость с Win98 по вызовам API-функций?
...
Рейтинг: 0 / 0
27.05.2004, 06:19
    #32535749
=viT=
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
ProcessorА VideoSoft'овский грид (vsFlexGrid) скроллируется без "задних" (и передних тоже) мыслей...
А любые новые компоненты наверное писались с учётом Мыши с роликами =) А вот уже стандартные компоненты видимо на это тогда еще не рассчитывали, хотя версии тех же компонент вроде бы и обновляются...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
06.05.2006, 13:40
    #33713010
Гарыныч
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
А как при перегрузке грида востановить скрол...у меня подвисяет приложение
...
Рейтинг: 0 / 0
06.05.2006, 18:46
    #33713934
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Полоса прокрутки и наша новая мышь!
big-dukeЧья то умная голова ( не моя ) советовала ставить мелкософтовский драйвер от intellimouse. МНе помогло.

Мне тоже показалось что автор имел ввиду склолинг в окне набора кода самого васика, в таком случае - это и есть наиболее верный ответ :). Общеизвестно что наибольшая несовместимость у продуктов мелкомягких с своими собственными произведениями, только из разных отделов. Я наткулся на эту проблему довольно давно и до сих пор не слыхал удобоваримого обьяснения происходящему, но вышеупомянутый драйвер действительно фиксит проблему с пол-пинка.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Полоса прокрутки и наша новая мышь! / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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