Dialog box mit rich edit wird nich geöffnet!



  • Dann vergiss InitCommonControlEx nicht!

    schirrmie



  • Jupp, das ist wichtig (-> InitCommonControlsEx); darauf wollte ich hinaus 😉 . Falls das immer noch nicht funktioniert, zeig mal den Abschnitt wie Du das Control erstellst.



  • commoncrontrols bringt auch nix 😞

    int APIENTRY WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR     lpCmdLine,
                         int       nCmdShow )
    {
    	InitCommonControls();
    
    	return DialogBox(hInstance,MAKEINTRESOURCE(IDD_PROPPAGE_LARGE),0,DlgProc);
    
    }
    


  • Vergiss nicht die includes und Libs

    // Include für Richedit
    #include <richedit.h>
    
    // Libery zu Richedit
    #pragma comment(lib,"RichEd20.lib")
    

    und eventuel noch die Dll hInst is das handle zu deinen HINSTANCE

    //bsp Global Variables:
    HINSTANCE hInst;
    //..
    case WM_INITDIALOG:
    {
       hInst = LoadLibrary("riched20.dll");
    }
    return TRUE;
    
    //usw.
    


  • kann doch nicht sein... ich kriege doch keine fehlermeldung wenn ich compile...das problem kann nicht an den fehlenden includes liegen!
    ich habs trotzdem ausprobiert, es geht auch dann nicht



  • Rich Edit ist kein Common Control. Also brauchst du InitCommonControls(Ex) nicht.
    Du musst die Rich Edit DLL laden wie Ascharan gezeigt hat, allerdings ist WM_INITDIALOG glaube ich schon zu spät.



  • war wohl nich bei der sache 😃

    dann eben so

    [code]
    int APIENTRY WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR     lpCmdLine,
                         int       nCmdShow)
    {
    	hInst = LoadLibrary(TEXT("riched20.dll"));
    
    	hInst = hInstance;
    
    	DialogBox(hInst, (LPCTSTR)IDD_BASIC_MAIN, 0, (DLGPROC)WndProc);
    
    	MSG msg;
    
    	while(GetMessage(&msg,0,0,NULL))
    	{
    		TranslateMessage(&msg);
    		DispatchMessage(&msg);
    	}
    	return msg.wParam;
    
    }
    [/code]
    


  • macht alles keinen unterschied

    hab jetzt folgendes drin:

    // Include für Richedit 
    #include <richedit.h> 
    
    // Libery zu Richedit 
    #pragma comment(lib,"RichEd20.lib")
    
    int APIENTRY WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR     lpCmdLine,
                         int       nCmdShow )
    {
    	hInst = LoadLibrary(TEXT("riched20.dll")); 
    
        hInst = hInstance;
    
    	DialogBox(hInst,MAKEINTRESOURCE(IDD_PROPPAGE_LARGE),0,DlgProc);
    	MSG msg; 
    
        while(GetMessage(&msg,0,0,NULL)) 
        { 
            TranslateMessage(&msg); 
            DispatchMessage(&msg); 
        } 
        return msg.wParam;
    
    }
    

    macht ÜBERHAUPT keinen utnerschied, ausser dass der prozess nicht sofort beendet wird, sondern unsichtbar anbleibt.



  • Bist Du sicher, dass die "IDD_PROPPAGE_LARGE" überhaupt eine RichEdit-Control ist ? Falls ja, dann poste mal die "DlgProc".

    *EDIT*

    Ich meine natürlich, enthält die Dialogbox eine RichEdit-Control ?



  • würde auch mal sagen poste mal deine DlgProc 😕


Anmelden zum Antworten