высота item'а в ListView

Тема в разделе "WASM.BEGINNERS", создана пользователем Consto, 16 авг 2006.

  1. Consto

    Consto New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2006
    Сообщения:
    79
    почему то высота item'а не соответствует размеру шрифта. Среди LVM_... не нашёл чего-либо связанного с высотой. Помогите пож-ста
     
  2. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.347
    может быть она соответствует размеру иконки? :)

    GetSystemMetrics, LVM_GETITEMRECT...
     
  3. Consto

    Consto New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2006
    Сообщения:
    79
    Код (Text):
    1. INVOKE     CreateWindowEx, WS_EX_CLIENTEDGE , addr ListViewClass,0,WS_CHILD   or LVS_REPORT ,0, 0, 150, 200, hWnd, NULL, hInstance, NULL
    2. mov     list,eax
    3. iNVOKE     SendMessage, list,LVM_SETEXTENDEDLISTVIEWSTYLE, 0,  LVS_EX_GRIDLINES
    причём здесь иконки?
     
  4. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.347
    Код (Text):
    1. RECT rect;
    2. int ItemHeight = 0;
    3.  
    4. rect.left = LVIR_BOUNDS;
    5. SendMessage(hwndListView, LVM_GETITEMRECT, 0, (LPARAM)&rect);
    6. ItemHeight = rect.bottom-rect.top;
    ...

    Код (Text):
    1. ItemHeight = GetSystemMetrics(SM_CYSMICON);
    Сравни значения в обоих вариантах.
     
  5. Consto

    Consto New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2006
    Сообщения:
    79
    GetSystemMetrics(SM_CYSMICON)=16
    ItemHeight = rect.bottom-rect.top=33
    ????
     
  6. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.347
    :) Так ты тестовый ListView создавай со стилем LVS_REPORT, как у тебя в примере.
    Или:
    LVS_ICON - GetSystemMetrics(SM_CYICON);
    LVS_LIST, LVS_REPORT - GetSystemMetrics(SM_CYSMICON);
     
  7. Consto

    Consto New Member

    Публикаций:
    0
    Регистрация:
    20 апр 2006
    Сообщения:
    79
    у меня в этой же проге есть ещё один ListView, и там всё нормально, LVS_.. и LVS_EX_.. такие же.
    Как высоты могут отличаться если я ничего не делал типа SetSystemMetrics
    :dntknw: