WEB开发网
开发学院软件开发VC VC 操作 SQL Server 主从表 阅读

VC 操作 SQL Server 主从表

 2006-07-23 11:17:17 来源:WEB开发网   
核心提示: void CDagView::OnItemchanged(NMHDR* pNMHDR, LRESULT* pResult){NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;// TODO: Add your control notificat
void CDagView::OnItemchanged(NMHDR* pNMHDR, LRESULT* pResult)
{
  NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  // TODO: Add your control notification handler code here
  CListCtrl& refListCtrl=GetListCtrl();
  if(pNMListView->uNewState&LVIS_SELECTED)
  …//选取列表项时,事件触发
  pResult=0;
}   
同样的方法处理单击,双击等事件,不再嗷述。

四、树形控件的操作及事件处理,利用递归根据数据库动态生成目录

树形控件,和列表控件一样,在VC数据开发中有着非常重要的地位。常用来显示分级,分类信息。其实,提到树,脑海里就出现一大堆树,什么二叉树,查找树,哈夫曼树等一大堆,也就想起了遍历树的常用算法—递归。虽然采用堆栈更有效率,但使用递归常使程序设计简化。

看以下程式片段: pRS->MoveFirst();
  _variant_t var;
  CString strTableName,strTableCode;
  HTREEITEM hChildItem;
  while(!pRS->adoEOF)
  {
    var=pRS->GetCollect("menucode");
    if(var.vt != VT_NULL)
      strTableCode = (LPCSTR)_bstr_t(var);
      
    //此即函数递归出口
    if(!strTableCode.Find(strParent,0) &&
                      strTableCode.GetLength()==strParent.GetLength()+2)
    {
      hChildItem=refTree.InsertItem(strTableName,hTreeNode,TVI_LAST);
      InitTree(refTree,hChildItem,strTableCode);
    }
    pRS->MoveNext();
  }   
  递归时充分利用树形结构的特点。然后结合递归思想,融合在一起,就行了。这里就是理论和实际的结合点。不同的开发语言提供的操作接口是不同的,如Delphi、.dotnet。我呈在在.net也实现了一个类似的树,算法思想一样,只是具体操作不同,因为dotnet提供的接口不同。

上一页  1 2 3 4  下一页

Tags:VC 操作 SQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接