Datacombo para Visual C++
Asignamos esta conexión mediante la función creada SetConnection.
- Code: Seleccionar todo
- void CDatacombo::SetConnection(CDaoDatabase *pDB)
- {
- m_pDB = pDB;
- }
La funcion LoadData recupera los datos segun la consulta SQL que se le envíe, pero esta consulta debe retornar un conjunto de registros de manera que el primer campo sea numérico y el segundo de tipo cadena, el primero es asigando mediante la función CComboBox::SetItemData(), es segundo es asginado como item del control para que se pueda ver.
- Code: Seleccionar todo
- void CDatacombo::LoadData()
- {
- ASSERT(::IsWindow(m_hWnd));
- ASSERT(m_pDB);
- ASSERT(m_pDB->IsOpen());
- ASSERT(!m_sSQL.IsEmpty());
- CDaoRecordset rs(m_pDB);
- COleVariant var;
- try{
- rs.Open(dbOpenSnapshot,m_sSQL);
- INT i = 0;
- ResetContent();
- while(!rs.IsEOF()){
- rs.GetFieldValue(1,var);
- InsertString(i,CCrack::strVARIANT(var));
- rs.GetFieldValue(0,var);
- switch(var.vt){
- case VT_I2:
- SetItemData(i,(DWORD)V_I2(&var));
- break;
- case VT_I4:
- SetItemData(i,(DWORD)V_I4(&var));
- break;
- case VT_R4:
- SetItemData(i,(DWORD)V_R4(&var));
- break;
- case VT_R8:
- SetItemData(i,(DWORD)V_R8(&var));
- break;
- }
- i++;
- rs.MoveNext();
- }
- }catch(CDaoException e){
- }catch(CMemoryException e){
- }
- if(rs.IsOpen()){
- rs.Close();
- }
- }
Archivos Adjuntos
- testdatacombo.zip36.68 KiB

Proyecto que usa la clase CDatacombo mostrando datos. - datacombo.zip2.08 KiB

Código fuente de la clase CDatacombo
Otros Artículos en esta sección
-
Este artículo muestra como agregar imagenes/iconos a los botones de los diálogos MFC. Visual C++ no tiene la opción de mejorar la presentación de los botones al estilo Visual Basic.Este ejemplo te ayudara de modo que no tengas que escribir mucho código para visualizar imágenes JPG, GIF, BMP en Diálogos MFC.Tutorial paso a paso para crear una aplicación basada en dialogo utilizando las librerías MFC con Visual C++ 2010¿Alguna duda? Sientete libre de hacer tus pruntas en nuestro:

foro deVisual C++ »
