powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / А какая у API-Listview нормальная стандартная граница (border)?
3 сообщений из 3, страница 1 из 1
А какая у API-Listview нормальная стандартная граница (border)?
    #38439214
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В VB6 всегда ставлю
Apperance = 1-3D
BorderStyle = 0 ccNone

Для апишного поставил
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private Const WC_LISTVIEW = "SysListView32"

  Dim LvStyle As Long
  LvStyle = WS_CHILD Or WS_VISIBLE Or WS_BORDER Or LVS_SHOWSELALWAYS Or m_ViewMode
  Dim ExStyle As Long
  ExStyle = WS_EX_CLIENTEDGE Or WS_EX_WINDOWEDGE
  m_hwndLV = CreateWindowEx(ExStyle, _
                            WC_LISTVIEW, _
                            0&, _
                            LvStyle, _
                            0, 0, _
                            rcClient.Right - rcClient.Left, _
                            rcClient.Bottom - rcClient.Top, _
                            hWndParent, _
                            0&, App.hInstance, 0&)


На классике вроде похож.
На вистах чет не очень - рамку какую-то двойную рисует -должна быть одинарная серенькая.
Как правильно не нашел. И в ControlSpy не могу подогнать.

Antonariy, выручай. Ты один это можешь знать.
...
Рейтинг: 0 / 0
А какая у API-Listview нормальная стандартная граница (border)?
    #38439270
_Дмит_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Используя:
%WS_EX_CLIENTEDGE - Apply a sunken edge border to the control.
%WS_EX_WINDOWEDGE - Apply a raised edge border to the control.
можно опустить %WS_BORDER, я думаю
...
Рейтинг: 0 / 0
А какая у API-Listview нормальная стандартная граница (border)?
    #38440235
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну я вот так пока сделал:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
  LvStyle = WS_CHILD Or WS_VISIBLE Or LVS_SHOWSELALWAYS Or m_ViewMode 'Or WS_BORDER
  Dim ExStyle As Long
  If IsWinVista And ThemesEnabled(hWndParent) Then
    ExStyle = WS_EX_STATICEDGE
  Else
    ExStyle = WS_EX_CLIENTEDGE 'Or WS_EX_WINDOWEDGE
  End If



Но, блин, на Вистах цвет верхней и левой границы правильный.
Правая - белая линия.
А нижняя то вообще для WS_EX_STATICEDGE не прорисовывается.

А WS_BORDER -точно не надо, он тогда черную границу делает.

Блин, вот как в VB-Listview - устраивало, но подогнать один в один не могу.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / А какая у API-Listview нормальная стандартная граница (border)?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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