tab-taste zum wechsel zw. steuerelementen aktivieren



  • wie bringe ich windows dazu
    zwischen meinen steuerelementen
    zu wechseln, wenn man tab drückt?
    laut msdn sollt es funktionieren
    wenn ich beim erstellen der
    steuerelemente WS_TABSTOP benutze.
    leider zeigt ds bei mii keine wirkung.
    muss ich das etwa selber implementieren?

    gruß & thx _um



  • while( GetMessage(&msg, NULL, 0, 0) )
         {
            if( !IsDialogMessage(NULL, &msg) )
            {
               TranslateMessage(&msg);
               DispatchMessage(&msg);
            }
         }
    


  • funktioniert nicht...
    hier mal ein bisschen code

    guiObject guiEditField(const char* text, Dimension *dim, HWND parent, HINSTANCE hInstance, int id, int extra, int extra2)
    {
    	guiObject temp;
    	if (dim == NULL)
    	{
    		temp.iId = temp.iStyle = ST_ERROR;
    		return temp;
    	}
    	temp.hWnd = CreateWindowEx (WS_EX_CLIENTEDGE + extra2, "EDIT", NULL,
    								WS_TABSTOP | WS_VISIBLE | WS_CHILD + extra,
    								dim->x, dim->y, dim->w, dim->h,
    								parent, (HMENU)id, hInstance, 0);
    	if (temp.hWnd != NULL)
    	{
    		temp.iId = id;
    		temp.iStyle = ST_EDIT;
    	}
    	else
    		temp.iId = temp.iStyle = ST_ERROR;
    
    	return temp;
    
    }//<- guiEditField
    
    ...
    	//mainloop
    	while(GetMessage(&msg, NULL, 0U, 0U))
    	{
    		if (!IsDialogMessage(NULL, &msg))
    		{
    			TranslateMessage(&msg);
    			DispatchMessage(&msg);
    		}
        }
    

    ne idee worans liegt?
    gruß _um



  • hat sich erledigt 😉
    so gehts:

    while( GetMessage(&msg, NULL, 0, 0) )
         {
            if( !IsDialogMessage(hwndMainFrame, &msg) )
            {
               TranslateMessage(&msg);
               DispatchMessage(&msg);
            }
         }
    

    thx.


Log in to reply