如何实现两个列表框的联动? 两个列表框, 在第一个列表框里输入AA,获取之后,点击按钮,进入数据库查询,找到符合AA条件的5条记录abcde在第二个列表框里输出,求代码,用MFC+vs2010写的。先谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ... <form id="Form1" runat="server"> <asp:GridView ID="GridView1" DataSourceID="SqlDataSource1" runat="server"/> <asp:SqlDataSource ID="SqlDataSource1" runat="server" SelectCommand="SELECT [id], [name], [pay] FROM [tb]" ConnectionString="<%$ ConnectionStrings:Pubs %>" /> </form>... void CMyDlg::OnBUTTONtiwen() { // TODO: Add your control notification handler code here // (1)------------------------------------------------------ //CString str; // GetDlgItem(IDC_EDIT_shuru)->GetWindowText(str); //AfxMessageBox(str); //------------------------------------------------------ CString str,str1; GetDlgItem(IDC_EDIT_shuru)->GetWindowText(str);//获取文本框的字符串 //AfxMessageBox(str); //连接数据库,打开数据源,这里的DSN就是之前在ODBC中设置的DSNif(!m_db.IsOpen() && !m_db.OpenEx(_T("DSN=spring;UID=sa;PWD=920705"), CDatabase::openReadOnly | CDatabase::noOdbcDialog)){ //MessageBox(L"连接错误!"); return;}//CRecordset类:代表从数据源选择一组记录(记录集)CRecordset m_set(&m_db);//Open方法打开记录集m_set.Open(CRecordset::forwardOnly,_T("SELECT question_note from question where question_id='str' "),//表中的数据以记录集对象的形式呈现//打开数据库查询CRecordset::readOnly);CDBVariant var; // 记录有数据的类型和数据的值,它封闭了VARIANT数据类型m_ListCtrl.DeleteAllItems(); //删除所有的项目short nFields = m_set.GetODBCFieldCount(); //得到列的数目int i = 0;//添加所有内容到控件while(!m_set.IsEOF()){ for(short index = 0; index < nFields; index++) { m_set.GetFieldValue(index, var); // do something with varValue //添加一行记录 if(index == 0) m_ListCtrl.InsertItem(i, VariantToCString(&var)); //继续增加记录的其他项 else m_ListCtrl.SetItemText(i, index, VariantToCString(&var)); } m_set.MoveNext(); i++;}m_set.Close();//凡打开m_db.Close(); //皆关闭SetDlgItemText(IDC_EDIT_shuchu, str);}CString CMyDlg::VariantToCString(CDBVariant* var){ CString str; //转换以后的字符串 if(!var) { str = "NULL Var Parameter"; return str; } switch(var->m_dwType) { case DBVT_SHORT: //str.Format(L"%d",(int)var->m_iVal); break; case DBVT_LONG: //str.Format(L"%d",var->m_lVal); break; case DBVT_SINGLE: //str.Format(L"%10.6f",(double)var->m_fltVal); break; case DBVT_DOUBLE: //str.Format(L"%10.6f",var->m_dblVal); break; case DBVT_BOOL: str = (var->m_boolVal==0) ?L"FALSE": L"TRUE"; break; case DBVT_STRING: str = var->m_pstring->GetBuffer(); break; case DBVT_ASTRING: str = var->m_pstringA->GetBuffer(); break; case DBVT_WSTRING: str = var->m_pstringW->GetBuffer(); break; case DBVT_DATE: //str.Format(L"%d-%d-%d",(var->m_pdate)->year,(var->m_pdate)->month,(var->m_pdate)->day); break; default: //str.Format(L"Unk type %d\n",var->m_dwType); TRACE(L"Unknown type %d\n",var->m_dwType); } return str;} mfc写数据库应用。在第一个框的 确认选中或离开 事件里,进行第二个框的内容的生成 xiexie str==“%"这个是什么意思? A B C 三台mssqlserver 2000数据库服务器,数据汇总至第四台D服务器上,请前辈指志下方案!小弟先感谢了! 如何查询出最新发表的记录?(有示例) 表中的列和现有的主键和unique约束不匹配 sql查询结果格式转换问题,高手帮帮忙吧 求一列varchar型数字的和 这个游标该怎么写啊!!谢谢了, w7 不能装sqlserver吗? 怎么在两条记录之间插入记录 急,所以在这里问。sql server 数据在crystal reports 8.5 英文版显示繁体问题,等待! 各位高手,帮小弟看看这个存储过程吧,感谢! 求各位帮个忙 从表中取个值 求一个简单的按月统计的语句
<form id="Form1" runat="server">
<asp:GridView ID="GridView1" DataSourceID="SqlDataSource1" runat="server"/>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
SelectCommand="SELECT [id], [name], [pay] FROM [tb]"
ConnectionString="<%$ ConnectionStrings:Pubs %>" />
</form>
...
{
// TODO: Add your control notification handler code here
// (1)------------------------------------------------------
//CString str;
// GetDlgItem(IDC_EDIT_shuru)->GetWindowText(str);
//AfxMessageBox(str);
//------------------------------------------------------
CString str,str1;
GetDlgItem(IDC_EDIT_shuru)->GetWindowText(str);//获取文本框的字符串
//AfxMessageBox(str);
//连接数据库,打开数据源,这里的DSN就是之前在ODBC中设置的DSN
if(!m_db.IsOpen() && !m_db.OpenEx(_T("DSN=spring;UID=sa;PWD=920705"),
CDatabase::openReadOnly | CDatabase::noOdbcDialog))
{
//MessageBox(L"连接错误!");
return;
}
//CRecordset类:代表从数据源选择一组记录(记录集)
CRecordset m_set(&m_db);
//Open方法打开记录集
m_set.Open(CRecordset::forwardOnly,_T("SELECT question_note from question where question_id='str' "),//表中的数据以记录集对象的形式呈现//打开数据库查询
CRecordset::readOnly);
CDBVariant var; // 记录有数据的类型和数据的值,它封闭了VARIANT数据类型
m_ListCtrl.DeleteAllItems(); //删除所有的项目
short nFields = m_set.GetODBCFieldCount(); //得到列的数目
int i = 0;
//添加所有内容到控件
while(!m_set.IsEOF())
{
for(short index = 0; index < nFields; index++)
{
m_set.GetFieldValue(index, var);
// do something with varValue
//添加一行记录
if(index == 0)
m_ListCtrl.InsertItem(i, VariantToCString(&var));
//继续增加记录的其他项
else
m_ListCtrl.SetItemText(i, index, VariantToCString(&var));
}
m_set.MoveNext();
i++;
}
m_set.Close();//凡打开
m_db.Close(); //皆关闭SetDlgItemText(IDC_EDIT_shuchu, str);}CString CMyDlg::VariantToCString(CDBVariant* var)
{
CString str; //转换以后的字符串
if(!var)
{
str = "NULL Var Parameter";
return str;
}
switch(var->m_dwType)
{
case DBVT_SHORT:
//str.Format(L"%d",(int)var->m_iVal);
break;
case DBVT_LONG:
//str.Format(L"%d",var->m_lVal);
break;
case DBVT_SINGLE:
//str.Format(L"%10.6f",(double)var->m_fltVal);
break;
case DBVT_DOUBLE:
//str.Format(L"%10.6f",var->m_dblVal);
break;
case DBVT_BOOL:
str = (var->m_boolVal==0) ?L"FALSE": L"TRUE";
break;
case DBVT_STRING:
str = var->m_pstring->GetBuffer();
break;
case DBVT_ASTRING:
str = var->m_pstringA->GetBuffer();
break;
case DBVT_WSTRING:
str = var->m_pstringW->GetBuffer();
break;
case DBVT_DATE: //str.Format(L"%d-%d-%d",(var->m_pdate)->year,(var->m_pdate)->month,(var->m_pdate)->day);
break;
default:
//str.Format(L"Unk type %d\n",var->m_dwType);
TRACE(L"Unknown type %d\n",var->m_dwType);
}
return str;
}
在第一个框的 确认选中或离开 事件里,进行第二个框的内容的生成