Subj : message loop question To : borland.public.cpp.borlandcpp From : mike Date : Tue Apr 20 2004 01:34 am i have a window that has a tab control and each tab has a new window associated with it. in the main message loop it looks like this: while (GetMessage (&msg_, NULL, 0, 0)) { TranslateMessage (&msg_); DispatchMessage (&msg_); } return msg_.wParam; however, this prevents the TAB button from navigating between controls. i tried modifying the loop to incorporate IsDialogMessage (), but that isn't correct either as when i try to type into the edit boxes of any tab i get about 5 or 6 of the same characters while (GetMessage (&msg_, NULL, 0, 0)) { for (int i=0; i<6; i++) if (IsDialogMessage (subdlg_[i], &msg_)) continue; TranslateMessage (&msg_); DispatchMessage (&msg_); } return msg_.wParam; what am in doing wrong? aloha, mike .