winapi zakładka kontrolki

Odpowiedz Nowy wątek
2014-12-15 10:36
0

Witam,

Jak zapobiec rysowaniu się kontrolek na 2 zakładkach naraz. Gdy uruchomie program wszystkie kontrolki rysują sie na obu zakładkach (co jest logiczne bo dopiero potem ukrywam na jednaj a na drugiej pokazuje) dopiero jak klikne w drugą zakładke zaczyna działać poniższy kod i pokazują się na zakładkach do nich przypisanych.

Teraz moje pytanie.

Jak to obejść ? Żeby od razu zadziałał poniższy kod.

case WM_NOTIFY:
 
n =( LPNMHDR ) lParam;
if( n->code == TCN_SELCHANGE && n->hwndFrom == hTab ) // Sprawdza, czy uchwyt pochodzi od hTab
{
    int index = TabCtrl_GetCurSel( hTab );
    switch( index ) 
    {
    case ID_TAB_1:
        ShowWindow( hListView, SW_SHOW );
        ShowWindow( hEdit, SW_HIDE );
        break;
    case ID_TAB_2:
       ShowWindow( hEdit, SW_SHOW );
       ShowWindow( hListView, SW_HIDE);
        break;
        //itd.
    }
}
break;
       case WM_DESTROY:
           PostQuitMessage(0);
           break;
   }
   return(DefWindowProc(hwnd, msg, wParam, lParam));
} 

Pozostało 580 znaków

2014-12-15 11:45

Na początku programu (np. w WM_CREATE) wyślij sobie WM_NOTIFY z wyborem pierwszej zakładki, to wykona się kod ukrywający niepotrzebne kontrolki.

edytowany 1x, ostatnio: Azarien, 2014-12-15 11:46
dzięki za pomoc. - klops 2014-12-15 11:53

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0