Wert wird nicht im Dialog gesetzt.



  • void CMy07View::OnBearbeitenGrafiktyp() 
    {
    	CWahl dialog;
    	dialog.m_Type = m_nDefType;			// m_nDefType an Dialog übergeben
    	if(dialog.DoModal()==IDOK) 
    		m_nDefType = dialog.m_Type;		// dialog.mType zurückspeichern in m_nDefType
    }
    

    m_Type ist voriniziiert mit -1.

    Wenn der Dialog offen ist soll ein Radiobutton bereits ausgewählt sein. Aber irgendwie macht der das nicht soo.

    http://mcsnoop.mc.funpic.de/MFC/sollaussehen.JPG

    Wenn ich den Dialog offen hatte und was ausgewählt habe ist der entsprechende Radiobutton bei nochmaligem öffnen des Dialoges ausgewählt.

    😕


  • Mod

    Der erste Button hat den Stil WS_GROUP?
    Dein DoDataExchange hat einen DDX_Radio Enträg für die ID des ersten Buttons?
    Die Button sind in der Z_Order nacheinander angeordnet?



  • Jup erster Button ist auf Group gesetzt.

    DoDataExchange mit Eintrag vom ersten Radiobutton:

    void CWahl::DoDataExchange(CDataExchange* pDX)
    {
    	CDialog::DoDataExchange(pDX);
    	//{{AFX_DATA_MAP(CWahl)
    	DDX_Control(pDX, IDC_SLIDER_THICKNESS, m_nThickness);
    	DDX_Control(pDX, IDC_COMBO_COLOR, m_comboColor);
    	DDX_Radio(pDX, IDC_RECT, m_Type);             // für den ersten Radiobutton
    	DDX_Check(pDX, IDC_CHECK_TRANSPARENZ, m_bTransparenz);
    	//}}AFX_DATA_MAP
    }
    

    Z_Order? Meinst du die Tabreihenfolge? Wenn ja dann ist auch diese bei IDC_RECT beginnend und dann folgen alle Radiobuttons und dann der rest vom Dialog.


Anmelden zum Antworten