BOOL CRktj::OnInitDialog()
{
CDialog::OnInitDialog();
for (int i=0; i<iCount; i++)
{
Holder = theApp.m_pADOSet->GetCollect("bjbh");
((CComboBox*)GetDlgItem(IDC_COMBO1))->InsertString(i, Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder);
if (0==i)
{ Holder = theApp.m_pADOSet->GetCollect("bjmc");
m_sBjm = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjxh");
m_sBjxh = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjlb");
m_sBjlb = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjdw");
m_sBjdw = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
}
theApp.m_pADOSet->MoveNext();
}
((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);
}
在显示的时候,CCombobox中是空白的。
void CRktj::OnSelchangeCombo1()
{
UpdateData(true);
_variant_t Holder;
_bstr_t strQuery;
//
AfxMessageBox("aa");
strQuery = "select * from jbxxb where bjbh='"+m_sBjbh+"' order by bjbh";
AfxMessageBox(strQuery);
theApp.m_pADOSet.CreateInstance(_uuidof(Recordset));
theApp.m_pADOSet->Open(strQuery,theApp.m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
AfxMessageBox("aa");
if (!theApp.m_pADOSet->EndOfFile)
{
Holder = theApp.m_pADOSet->GetCollect("bjmc");
m_sBjm = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjxh");
m_sBjxh = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjlb");
m_sBjlb = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjdw");
m_sBjdw = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
}
UpdateData(false);
}
重新选择后,查询中到SQL语句中的是上次的选择值。而不是我本次选择的值。请问这是怎么回事?如何解决?
{
CDialog::OnInitDialog();
for (int i=0; i<iCount; i++)
{
Holder = theApp.m_pADOSet->GetCollect("bjbh");
((CComboBox*)GetDlgItem(IDC_COMBO1))->InsertString(i, Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder);
if (0==i)
{ Holder = theApp.m_pADOSet->GetCollect("bjmc");
m_sBjm = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjxh");
m_sBjxh = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjlb");
m_sBjlb = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjdw");
m_sBjdw = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
}
theApp.m_pADOSet->MoveNext();
}
((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);
}
在显示的时候,CCombobox中是空白的。
void CRktj::OnSelchangeCombo1()
{
UpdateData(true);
_variant_t Holder;
_bstr_t strQuery;
//
AfxMessageBox("aa");
strQuery = "select * from jbxxb where bjbh='"+m_sBjbh+"' order by bjbh";
AfxMessageBox(strQuery);
theApp.m_pADOSet.CreateInstance(_uuidof(Recordset));
theApp.m_pADOSet->Open(strQuery,theApp.m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
AfxMessageBox("aa");
if (!theApp.m_pADOSet->EndOfFile)
{
Holder = theApp.m_pADOSet->GetCollect("bjmc");
m_sBjm = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjxh");
m_sBjxh = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
Holder = theApp.m_pADOSet->GetCollect("bjlb");
m_sBjlb = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder; Holder = theApp.m_pADOSet->GetCollect("bjdw");
m_sBjdw = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
}
UpdateData(false);
}
重新选择后,查询中到SQL语句中的是上次的选择值。而不是我本次选择的值。请问这是怎么回事?如何解决?
解决方案 »
- 问一个菜鸟级的问题,“模块”到底是个什么概念
- 获取的进程图标都是文件夹
- 消息响应函数的问题
- 好几天的问题没能解决!!!!!没钱了也要发帖~~~!回帖的以后再给分!!
- 在视图类种定义了一个成员变量socket,建立了连接
- =======一个时间转化问题,在线等!=========
- Question for "Recordset"
- 音频流合成问题,希望高手解答
- 前几天我下载了一本ebook《Inside COM+》,是CHM格式的,可是里面有许多乱码,请问怎样清除掉这些乱码呢?
- 【pDoc->UpdateAllViews(NULL); 问题????】
- GIT和Marshal? 在线请教
- 出现编译错误!!!请求帮助!!
((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);
不起作用,而且改变下拉框中的值的时候,得到下拉框的值为下拉框在重新选择之前的值,而不是我重新选择的值。
比如下拉框里有1,2,3三个选项,如果现在下拉框里显示的是1,那我在下拉列表中选择2,但是读取到的值是1,而不是2