powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в VB6 сделать боковое меню и панели с передвижными границами
9 сообщений из 9, страница 1 из 1
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855167
donpauls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в VB6 сделать боковое меню и панели с передвижными границами?
Какой для этого нужен компонент?

Может я не так назвал, вот смотрите рисунок:
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855179
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поищи по форуму - Антонарий выкладывал класс Splitter - специально для таких целей.
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855248
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donpauls, ого намечается заворушка :), потом по результату выложите пжл своё решение
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855264
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProПоищи по форуму - Антонарий выкладывал класс Splitterвот 8805455

катастрофа,
а тебе изучать полностью, и, пока не изучишь Взаимное положение ListView/Treeview даже не встревай
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855300
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donpauls,

По поводу (2) и (3) тебе ответили правильно. От себя могу добавить, что сделать нормально нелегко, повозиться придется.

По поводу (1) проще. Это TreeView, причем как на картинке это стиль "explorer", на Висте/7 по хорошему нужна еще двойная буферизация (чтоб не было мелькалки). Я делаю так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
    If IsWinVista And ThemesEnabled(TreeView1.hwnd) Then 'стиль для Висты
        SetWindowTheme TreeView1.hwnd, StrPtr("explorer"), 0
        'линии не нужны - не стильно,гориз. scroll не нужен
        SetWindowLong TreeView1.hwnd, GWL_STYLE, GetWindowLong(TreeView1.hwnd, GWL_STYLE) Or TVS_HASBUTTONS Or TVS_LINESATROOT Or TVS_NOHSCROLL
        'применяем горизонт. авто-scroll и фейдер (стрелка что вместо +/- растворится при потере фокуса формой)
        lStyle = SendMessage(TreeView1.hwnd, TVM_GETEXTENDEDSTYLE, 0, 0)
        lStyle = lStyle Or TVS_EX_FADEINOUTEXPANDOS Or TVS_EX_AUTOHSCROLL Or TVS_EX_DOUBLEBUFFER
        Call SendMessageLong(TreeView1.hwnd, TVM_SETEXTENDEDSTYLE, 0, ByVal lStyle)
    ElseIf IsWinVista Then
        SetWindowLong TreeView1.hwnd, GWL_STYLE, GetWindowLong(TreeView1.hwnd, GWL_STYLE) Or TVS_HASBUTTONS Or TVS_LINESATROOT Or TVS_HASLINES
        lStyle = SendMessage(TreeView1.hwnd, TVM_GETEXTENDEDSTYLE, 0, 0)
        lStyle = lStyle Or TVS_EX_DOUBLEBUFFER
        Call SendMessageLong(TreeView1.hwnd, TVM_SETEXTENDEDSTYLE, 0, ByVal lStyle)
    Else
        'добавляем линии в классич/XP стиле (для root с манифестом они не добавятся)
        SetWindowLong TreeView1.hwnd, GWL_STYLE, GetWindowLong(TreeView1.hwnd, GWL_STYLE) Or TVS_HASBUTTONS Or TVS_LINESATROOT Or TVS_HASLINES
    End If
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855586
AndreyMp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторОт себя могу добавить, что сделать нормально нелегко, повозиться придется.
Я когда то юзал MB Splitter Control. Особых трудностей не припомню.
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855647
QValD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,
splitter + picture box и нет проблем
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855658
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreyMp,

Спорить сильно не буду, не интересно, но..
Если абы-кабы и в голый проект и без понимания чего там в этом классе, то оно несложно.
Я вставлял в рабочий напичканный кучей всего проект.
Там куча ньюансов, чтоб палка не рисовалась поверх того чего не надо.
Помнится с мерцанием палки какая-то проблема толи на XP, то ли на Висте была, пришлось API заменять и т.п.
Да сделайте поиск, тема что Shosker указал и еще какая-то вроде была про эту палку (с участием меня и Бенедикта).
...
Рейтинг: 0 / 0
Как в VB6 сделать боковое меню и панели с передвижными границами
    #37855688
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот еще чисто по памяти вспоминаю:
1) всякие ограничители, чтоб палка куда не надо не уезжала и не задвигала ваши контролы в нули и в минусы, потом можно не достать, а можно и crash схлопотать и т.п
2) проблемы потери фокуса, когда тащим палку
3) с Treeview этим вистовским в стиле "explorer" какая-то спецефическая проблема возникает при движении палки, что-то с фейдером связано.
...
Все это включая решения в моих топиках есть, только возня это, если уж совсем аккуратно делать.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в VB6 сделать боковое меню и панели с передвижными границами
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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