PROGRAMA: ESTUDIO DE MENSAJES EN VISUAL C++
Se crea una aplicación MFC *.exe que llamamos estudio_mensajes escojemos un cuadro de diálogo o una caja de dialogo Dialog Box para hacer la aplicación, introducimos dos edits, un boton para visualizar dos combo box y una etiqueta que le cambiamos el IDC para que pueda visualizar el valor de retorno, las otras etiquetas son solo para tener texto.
Dentro del botón visualizar insertamos el siguiente código:
void CEstudio_mensajesDlg::OnButton1()
{
// TODO: Add your control notification handler code
here
int
retorno;
HWND hWnd;
CString titulo;
CString texto;
CString tipo;
CString tipo2;
tipo2="";
CString ret;
GetDlgItemText(IDC_EDIT1,texto);
GetDlgItemText(IDC_EDIT2,titulo);
GetDlgItemText(IDC_COMBO1,tipo);
GetDlgItemText(IDC_COMBO2,tipo2);
if (tipo!="")
{
if(tipo2=="")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto, MB_OKCANCEL);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto,
MB_ABORTRETRYIGNORE);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto, MB_YESNO);
if (tipo=="MB_YESNOCANCEL") retorno=MessageBox(titulo,
texto, MB_YESNOCANCEL);
}
if(tipo2=="MB_ICONEXCLAMATION")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK+MB_ICONEXCLAMATION);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto, MB_OKCANCEL+MB_ICONEXCLAMATION);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto, MB_ABORTRETRYIGNORE+MB_ICONEXCLAMATION);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto, MB_YESNO+MB_ICONEXCLAMATION);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto, MB_YESNOCANCEL+MB_ICONEXCLAMATION);
}
if(tipo2=="MB_ICONWARNING")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK+MB_ICONWARNING);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto, MB_OKCANCEL+MB_ICONWARNING);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto, MB_ABORTRETRYIGNORE+MB_ICONWARNING);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto,
MB_YESNO+MB_ICONWARNING);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto,
MB_YESNOCANCEL+MB_ICONWARNING);
}
if(tipo2=="MB_ICONINFORMATION")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK+MB_ICONINFORMATION);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto,
MB_OKCANCEL+MB_ICONINFORMATION);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto,
MB_ABORTRETRYIGNORE+MB_ICONINFORMATION);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto,
MB_YESNO+MB_ICONINFORMATION);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto,
MB_YESNOCANCEL+MB_ICONINFORMATION);
}
if(tipo2=="MB_ICONASTERISK")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK+MB_ICONASTERISK);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto,
MB_OKCANCEL+MB_ICONASTERISK);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto,
MB_ABORTRETRYIGNORE+MB_ICONASTERISK);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto,
MB_YESNO+MB_ICONASTERISK);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto,
MB_YESNOCANCEL+MB_ICONASTERISK);
}
if(tipo2=="MB_ICONSTOP")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto,
MB_OK+MB_ICONSTOP);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto,
MB_OKCANCEL+MB_ICONSTOP);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto,
MB_ABORTRETRYIGNORE+MB_ICONSTOP);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto,
MB_YESNO+MB_ICONSTOP);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto,
MB_YESNOCANCEL+MB_ICONSTOP);
}
if(tipo2=="MB_ICONERROR")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto,
MB_OK+MB_ICONERROR);
if (tipo=="MB_OKCANCEL") retorno=MessageBox(titulo,
texto, MB_OKCANCEL+MB_ICONERROR);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto, MB_ABORTRETRYIGNORE+MB_ICONERROR);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto, MB_YESNO+MB_ICONERROR);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto, MB_YESNOCANCEL+MB_ICONERROR);
}
if(tipo2=="MB_ICONHAND")
{
if (tipo=="MB_OK")
retorno=MessageBox(titulo, texto, MB_OK+MB_ICONHAND);
if (tipo=="MB_OKCANCEL")
retorno=MessageBox(titulo, texto, MB_OKCANCEL+MB_ICONHAND);
if (tipo=="MB_ABORTRETRYIGNORE")
retorno=MessageBox(titulo, texto, MB_ABORTRETRYIGNORE+MB_ICONHAND);
if (tipo=="MB_YESNO")
retorno=MessageBox(titulo, texto, MB_YESNO+MB_ICONHAND);
if (tipo=="MB_YESNOCANCEL")
retorno=MessageBox(titulo, texto, MB_YESNOCANCEL+MB_ICONHAND);
}
/*
EN EL COMBO1 introducimos en la propiedad
data
MB_OK
MB_OKCANCEL
MB_ABORTRETRYIGNORE
MB_YESNO
MB_YESNOCANCEL
COMBO2
MB_ICONEXCLAMATION
MB_ICONWARNING
MB_ICONINFORMATION
MB_ICONASTERISK
MB_ICONQUESTION
MB_ICONSTOP
MB_ICONERROR
MB_ICONHAND*/
ret.Format("retorno = %d", retorno);
SetDlgItemText(IDC_STATIC1,ret);
}
}