Моргает TabControl.

Тема в разделе "WASM.WIN32", создана пользователем pas, 2 янв 2005.

  1. pas

    pas New Member

    Публикаций:
    0
    Регистрация:
    18 апр 2003
    Сообщения:
    330
    Адрес:
    Russia
    Моргает TabControl.

    При переключении закладок в TabControl на мгновение появляется черная полоса, т.е. происходит "моргание". Как от этого избавиться?

    В TabControl две закладки, на них по всей области по одному ListView.



    Создание
    Код (Text):
    1. .init:
    2. ;beg
    3.     invoke   LoadIcon,[hinstance],1
    4.     invoke   SendMessage,[hwnd],WM_SETICON,ICON_SMALL,eax
    5.     invoke   GetDlgItem,[hwnd],209
    6.     mov     [hProp],eax
    7.     xor      ebx,ebx
    8.     mov      [tci.imask],TCIF_TEXT
    9.     mov      [tci.cchTextMax],10   
    10.     mov      [tci.pszText],h4
    11.     invoke   SendMessage,[hProp],TCM_INSERTITEM,0,tci
    12.     invoke   CreateDialogParam,[hinstance],300,[hProp],Page1,0
    13.     ;mov      ecx,hTab
    14.     mov      [hTab+ebx*4],eax
    15.     inc      ebx
    16.     mov      [tci.pszText],MyMessage
    17.     mov      [tci.cchTextMax],7
    18.     invoke   SendMessage,[hProp],TCM_INSERTITEM,1,tci
    19.     invoke   CreateDialogParam,[hinstance],400,[hProp],Page2,0
    20.     ;mov      ecx,hTab
    21.     mov      [hTab+ebx*4],eax
    22.     inc      ebx
    23.    
    24.     ;invoke   SendMessage,[hProp],PSM_SETTITLE ,0,_class2
    25.     jmp .ext




    Переключение закладок:
    Код (Text):
    1.  
    2.     mov      eax,[lparam]
    3.     mov      eax,[eax+8]
    4.     cmp      eax,TCN_SELCHANGE
    5.     jne   .ext
    6. .selchan:
    7.     invoke SendMessage,[hProp],TCM_GETCURSEL,0,0
    8.     cmp eax,[SelCur]
    9.     je .ext
    10.     push  eax
    11.     mov     eax,[SelCur]
    12.     invoke ShowWindow,dword [hTab+eax*4],SW_HIDE
    13.     pop     eax
    14.     mov     [SelCur],eax
    15.     invoke ShowWindow,dword [hTab+eax*4],SW_SHOWDEFAULT
    16.          
    17.     jmp .finish
     
  2. AsmGuru62

    AsmGuru62 Member

    Публикаций:
    0
    Регистрация:
    12 сен 2002
    Сообщения:
    689
    Адрес:
    Toronto
    А как сделано родительское окно?

    То, которое создаёт TabControl?

    При его (родителя) регистрации надо указать
    Код (Text):
    1. hbrBackground = NULL
     
  3. pas

    pas New Member

    Публикаций:
    0
    Регистрация:
    18 апр 2003
    Сообщения:
    330
    Адрес:
    Russia
    Родительское окно - диалоговое из ресурсов, TabControl то же там описан.