powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Полоса прокрутки и наша новая мышь!
19 сообщений из 19, страница 1 из 1
Полоса прокрутки и наша новая мышь!
    #32522158
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю те стандартные компоненты, которые сразу идут с VB6 были написаны, когда колесо прокрутки мыши еще не могли себе даже представить! =) Но ведь как им удобно пользоваться! А вот как это замечательное изобретение использовать в собственных проектах на VB6???
Может кто-нибудь знает какой-нибудь хинт?
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32522495
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Драйвера родные на хвостатых с колесиками ставьте!
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32523122
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то IE6, Word и т.д. у меня работают с колесом нормально. Я вот думаю - может просто компонентами надо другими пользоваться? Или компоненты самому именно на Сях писать?
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32523185
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пиши родной , пиши!
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32524067
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати ListView в этом плане оказался поуступчивее =) А вот DataGrid....
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32528312
Andy154
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
Драйвера родные на хвостатых с колесиками ставьте!


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

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

Hp превратился в A4 :).
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32531510
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чья то умная голова ( не моя ) советовала ставить мелкософтовский драйвер от intellimouse. МНе помогло.
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #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
Полоса прокрутки и наша новая мышь!
    #32533680
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy2 vit
DataGrid рачком поставим, но скроллиться, блин, заставим:

Вот спасибо, дельным советом помог, а не всякими драйверами для мыши, которая у меня и так работает. Код обязательно пригодится в последующих проектах. Ещё раз спасибо БОЛЬШОЕ!
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32534038
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Особо губы не раскатывай, скроллинг небыстрый и дерганый.
По идее с нажатым шифтом скроллируется раз в 10 быстрее, попробуй половить значения wparam и lparam. Если наткнешься на что-то полезное, ставь соответственно gDataList.Scroll 0, +-10
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32534098
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DataGrid рачком поставим, но скроллиться, блин, заставим
А VideoSoft'овский грид (vsFlexGrid) скроллируется без "задних" (и передних тоже) мыслей...
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #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
Полоса прокрутки и наша новая мышь!
    #32534192
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В догонку: есть способ скроллировать окна чужих поцессов :D
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32534767
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Antonariy
Проверил код первого твоего сообщения для 98-й винды и немного расстроился... Не пашет, да ещё и валит VB =( Хотя в >=Win2k работает...
Есть ли мысли по этому поводу?
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32534854
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Под 98 не пробовал, каюсь. Попробуй 2й способ, возможно это как раз из-за gDataList.
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32535746
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй 2й способ, возможно это как раз из-за gDataList.
Windows98:
В режиме проекта DataGrid даже скроллиться начал, но потом опять убил VB6. Попробовал скомпилить - завесил наглухо систему, пришлось перезагружаться.
Может существует какая-то несовместимость с Win98 по вызовам API-функций?
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #32535749
Фотография =viT=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProcessorА VideoSoft'овский грид (vsFlexGrid) скроллируется без "задних" (и передних тоже) мыслей...
А любые новые компоненты наверное писались с учётом Мыши с роликами =) А вот уже стандартные компоненты видимо на это тогда еще не рассчитывали, хотя версии тех же компонент вроде бы и обновляются...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Полоса прокрутки и наша новая мышь!
    #33713010
Гарыныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как при перегрузке грида востановить скрол...у меня подвисяет приложение
...
Рейтинг: 0 / 0
Полоса прокрутки и наша новая мышь!
    #33713934
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-dukeЧья то умная голова ( не моя ) советовала ставить мелкософтовский драйвер от intellimouse. МНе помогло.

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


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