VARIANT va;
va.vt = VT_I4;
va.lVal = 0;
m_pRs->GetFields()->GetItem(va)->GetName();//这一名程序会出错
va.vt = VT_I4;
va.lVal = 0;
m_pRs->GetFields()->GetItem(va)->GetName();//这一名程序会出错
解决方案 »
- VS2008如何修复由于停电乱码的CPP文件?
- 使用CScrollView的一个问题
- 焦点在编辑框中的时候按回车能弹出MessageBox
- ms h.263压缩视频ICSendMessage(m_hIC,0x60c9,0xf7329ace,0xacdeaea2)只能是176*144大小,有谁知道改变大小的方法???
- VC6 Word AddIn 设置字体无效是什么原因?麻烦看一下
- 帮我看一看编译错误?
- 如何判断一个窗体是否最大/最小化
- VC中如何实现对串口的控制?
- 请问如何可以判断一个CBitmap是合法的呢?
- 数据库注册问题,请大家指教!
- 新建一个表,为何不能插入数据?
- 请问SOCKADDR_STORAGE是在哪里定义的?
CString strFieldName = (char*)((_bstr_t)var);
long c = 0;
FieldsPtr fields;
fields = m_pRecordset->GetFields();
fields->get_Count(&c);
CString header[1000];
for(;;)
{
if(!(this->m_list.DeleteColumn(0)))
{
break;
}
}
for(int i=0;i<(c);i++)
{
Field * field = NULL;
VARIANT ind;
ind.vt = VT_I4;
ind.lVal = i;
//获取Field对象:
m_pRecordset->Fields->get_Item(ind,&field);
//获取字段名:
if(field)
{
//获取字段值:
_variant_t var,value;
var = field->GetName();
header[i] = var.bstrVal;
}
if(i==0)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 50, -1);
if(i==1)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 160, -1);
if(i==2)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 40, -1);
if(i==3)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 140, -1);
if(i==4)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 60, -1);
if(i>4)
this->m_list.InsertColumn(i,header[i],LVCFMT_LEFT, 450/(c), -1);
}