Button in Dialogbox einfügen



  • habs jetrzt so gemacht :

    case WM_INITDIALOG:
    
    	static HWND hButton;
    
    					hButton =	CreateWindow(_T("button"), _T("Knopf"), WS_CHILD | WS_VISIBLE , 0, 0, 0, 0, hDlg, NULL,((LPCREATESTRUCT) lParam)->hInstance, NULL);
    
    		case WM_COMMAND:
    			if ((LOWORD(wParam) == IDOK))
    			{
    				EndDialog(hDlg, LOWORD(wParam));
    				return TRUE;
    			}
    			break;
    

    soweit so gut. es werden keine fehler angezeigt. aber auch keine buttons.

    woran kann das liegen ??

    danke



  • hast du da bei der Fensterhöhe und Breite 0 eingetragen?
    Dann kann ja nichts kommen...



  • Vielleicht liegt es an den Parametern in CreateWindow()
    Du hast dort 0, 0, 0, 0 stehen. Diese Parameter stehen für:
    xPos
    yPos
    xSize
    ySize
    Glaube ich jedenfalls.
    Mit diesen Parametern kriegst du einen Button der Grösse 0 / 0 in der linken oberen Ecke deines Anwendungsbereichs.... 🙂



  • auch geändert kommt nichts.. hab ich was vergessen ??

    LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
    {
    
    	static HWND hButton;
    
    	switch (message)
    	{
    		case WM_INITDIALOG:
    
    				hButton = CreateWindow(_T("button"), _T("Knopf"), WS_CHILD | WS_VISIBLE , 10, 10, 10, 10, hDlg, NULL,((LPCREATESTRUCT) lParam)->hInstance, NULL);
    
    		case WM_COMMAND:
    			if ((LOWORD(wParam) == IDOK))
    			{
    				EndDialog(hDlg, LOWORD(wParam));
    				return TRUE;
    			}
    			break;
    	}
        return FALSE;
    }
    

    danke



  • bist du sicher das er nicht da ist?
    10 auf 10 Pixel ist schon sehr klein. Mach lieber mal 100.



  • also habs auf 100, aber sehe trotzdem nichts. der dialog wird auch gestartet. aber es ist nur kein button drin. muss ich woanders noch was einstellen oder verändern? in der *.rc datei vielleicht?

    danke euch !!



  • mach mal bei den Styles noch BS_DEFPUSHBUTTON oder BS_PUSHBUTTON



  • ne passiert auch nichts..
    ich habe mal in meine *.rc datei geschaut. da steht schon was von diesem dialog. darüber kann ich auch text eintragen. aber irgednwie keine buttons.

    hier ein auszug:

    /////////////////////////////////////////////////////////////////////////////
    //
    // Dialog
    //
    
    IDD_ABOUTBOX DIALOG DISCARDABLE  0, 0, 125, 71
    STYLE DS_MODALFRAME | WS_POPUP 
    EXSTYLE 0x80000000L
    CAPTION "Mode"
    FONT 8, "System"
    BEGIN
         LTEXT           "Copyright (C) 2008",IDC_STATIC,38,25,70,8
    END
    

    also das copyright steht dann drin.
    kann ich darüber irgednwie einen button hinzufügen ??

    danke

    vesna



  • normal macht man das nicht per Hand sondern mit dem Ressource Editor vom Visual Studio...



  • also manuell geht es nicht?

    das createwindow müsste doch eigentlich funktionieren oder nicht ? 😕

    danke



  • kannst du nochmal den Code posten wie er jetzt aussieht?



  • Also in dem Fall kannst du in deinem rc-Skript die folgende Zeile einfügen:
    PUSHBUTTON "Knopf", IDC_BUTTON, 10, 10, 100, 20

    und dann in der resource.h:

    #define IDC_BUTTON 1001

    dann solltest du das CreateWindow() aber weglassen.



  • sehr gut dave 🙂
    jetzt seh ich wenigstens schonmal einen button. damit werd ich jetzt weiter rumspielen.

    vielen dank !!



  • das sollte man aber nicht machen da reagiert Visual Studio seeeeeeehr schlecht drauf



  • 😕 inwiefern schlecht?


Anmelden zum Antworten