Red de conocimiento informático - Aprendizaje de programación - ¿Cómo crear múltiples cuadros de diálogo a partir de una clase de cuadro de diálogo en MFC?

¿Cómo crear múltiples cuadros de diálogo a partir de una clase de cuadro de diálogo en MFC?

Cuadros de diálogo que utilizan recursos, debido a que utilizan asociación de ID, existe una correspondencia uno a uno entre un recurso y un conjunto de códigos (.H/CPP) y es imposible crear un diálogo. cajas con diferentes interfaces.

Si la estructura de estos cuadros de diálogo es simple y el valor de retorno no requiere mucho código, puede considerar usar código para crear dinámicamente cuadros de diálogo y controles de diálogo. Sin embargo, este método también requiere mucho código, porque cada control debe crearse dinámicamente, por lo que es mejor tener varias clases más.

Además, si la interfaz se ve básicamente igual, entonces no hay problema al usar la misma clase. Simplemente pase un parámetro después de declarar el cuadro de diálogo modal y simplemente ajústelo de acuerdo con los parámetros en OnInitDialog. : CxxDialog ?dlg;

dlg.modeSet?=?2; //Miembros de clase personalizados, parámetros

dlg.DoModal();

//En OnInitDialog

if(modeSet==2)

SetDlgItemText(IDC_BUTTON1,_T("Cambiar parámetro 1"));

else

SetDlgItemText(IDC_BUTTON1,_T("Establecer parámetro 2"));