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
-
Es una técnica para reducir el parpadeo producido al dibujar en la pantalla, es muy útil para desarrollar juegos por que éstos suelen requerir refrescamiento continuo de pantalla.Una forma de utilizar el control ActiveX MSFlexGrid en aplicaciones Visual C++ basadas en MFC, este control es útil para visualizar datos.Se trata de un juego donde hay una serpiente que esta en constante movimiento, cuando come algo crece, el juego termina cuando la serpiente ya no tiene espacio.¿Alguna duda? Sientete libre de hacer tus pruntas en nuestro:
foro deVisual C++ »