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
-
He aquí un programa que grafica todo tipo de funciones gracias a su interprete que utiliza un Analizador Léxico, Analizador Sintáctico, y un Analizador semántico.Same Game es un juego tipo puzzle (rompecabezas) de un solo jugador. El juego consiste en eliminar la mayor cantidad de grupos de elementos de un tablero de N x M.Un control personalizado basado en la clase CStatic en el que se puede cambiar el color de fondo y color texto, es muy útil para darle una apariencia mejorada a nuestras aplicaciones Visual C++¿Alguna duda? Sientete libre de hacer tus pruntas en nuestro:
foro deVisual C++ »