工具软件   办公软件   操作系统   网络安全   设计在线   程序开发   教程宝典   软件下载   软件论坛
您的位置:软件 > 开发者网络 > 开发工具 > 开发专栏 > VC > 正文
用Visual C++操作SQL Server主从表
[文章信息]
作者:袁怀善
时间:2004-09-28
出处:VC知识库
责任编辑:方舟
[文章导读]
切分窗口既适用于SDI应用程序,也适宜于MDI应用程序
advertisement
热点推荐
· Excel动画图解:“高级筛选”
· 如何使用Ghost备份和恢复系统
· Visual C++ MFC 中常用宏的含义
· PS色彩调整简明教程:色彩调整图层
· 巧用资源实现文件共享
[正文]

1 2 3  下一页

  本文源代码下载

  工作之余,用VC作了一个小程序,是VC+SQL server模式的,程式内容比较简单,主要设及以下内容:

  窗口如何分割;

  多视图之间如何通信;

  列表视图的操作及事件处理;

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

  实现主从表的显示 以下对程序细节稍作一下说明;

  一、窗口如何分割

  切分窗口既适用于SDI应用程序,也适宜于MDI应用程序。它通常驻是以类 CSplitterWnd来表示,对Windows 来说,CSplitterWnd 是一个真正的窗口,它完全占用框架窗口的客户区域而视图占用切分窗口的窗格区域。 动态切分与静态切分 动态切分允许用户须任何时候对窗口进行切分,用户既可以通过选取菜单也可以通过拖动滚动条中的切分框来进行切分。动态切分窗口使用的是一个视图类。 静态切分,当窗口第一次被创建时,窗格就已经被切他好了,它们不能再被改变。用户可以移动窗格边框,但此时不能再对窗口进行合并或再划分。静态切分窗口允许使用多个视图类,并且可以创建时对这些视图类进行配置。在静态切分窗口中,每个窗格都有自己的滚动条。 动态切分比较简单,不实用,下面看静态切分。

BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
 CRect rect;
 GetClientRect(&rect);
 m_wndSplitter1.CreateStatic(this,1,2);
 m_wndSplitter1.CreateView(0,0,RUNTIME_CLASS(CClassTreeView),CSize(150,150),pContext);
 m_wndSplitter2.CreateStatic(&m_wndSplitter1,2,1,WS_CHILD|WS_VISIBLE,m_wndSplitter1.IdFromRowCol(0,1));

 m_wndSplitter2.CreateView(1,0,RUNTIME_CLASS(CDagDetialView),CSize(0,0),pContext);
 m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CDagView),CSize(0,0),pContext);
 m_wndSplitter2.SetRowInfo(0,rect.Height()/2,0);

 return true;

 //重载时不能调用基类的OnCreateClient()
}

  以上是本程序DEMO使用的方法。关于切分详细信息,请查阅MSDN.

  二、多视图之间的通信

  本程序demo使用了三个视图类,Winzard生成了一个,其余的是我加的。关于多视图之间的通信主要是茯得你要访问的视图类的pointer,如何茯得?有两种方法1,通过视图类(如果有多个视图共享一个文档类的话)2.通过主框架茯得。由于我的程式就一个文档类,其他视图类是独立的,所以就采用第二种方法了。

  以下代码是茯得CDagDetialView类指针的示例,其余类同。CMainFrame* pFrame=static_cast<CMainFrame*>(AfxGetMainWnd());//茯得主框架

CDagDetialView* pDagDetialView =static_cast<CDagDetialView*>(pFrame->m_wndSplitter2.GetPane(1,0));

  以上有一点,我觉得最好采用以上形式,虽说通过C的强制转换语法也行,但最好还是使用C++的语法比较好。

  茯得视图指针后你就可以do anything that you want to do
顺便说一下,通信细节有一些牵连到效率的地方,一定要妥善处理。上面的demo程式,没有考虑过多。因为我觉得这比较适合大家看明白意思,如果程式模块分散开来,程式看起来是简洁了不少,但不太方便看清程序流程。请见谅。


1 2 3  下一页

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容焦点新闻
  • VC++下命名管道编程的原理及实现
  • 用Media Player设计个性化媒体播放器
  • MFC应用程序中浏览PDF、Word文件
  • VC++中进程与多进程管理的方法
  • VC6.0下利用消息实现内部进程通讯
  • 杨元庆终未能如愿 陈俊圣被台积电招至麾下
  • 女CEO辞职无损惠普“形象” 股价不降反升
  • 专家论道:跨国并购与打造中国IT跨国公司
  • 收购案后 甲骨文公布产品联合路线发展计划
  • 电子电器业人才需求解读 三类人才持续走俏
  • 公安机关:网上销售违禁品多为诈骗勿购买
  • IT企业巨头出谋献策 成都优先发展软件产业
  • 我国将加快以社会信息化推进城市应急联动
  • Advertisement

    天极无线


    奇妙科幻|美好风光|清风车影|漫画卡通|星座生肖|明星写真|动物世界
    老鼠爱大米
    挥着翅膀的女孩
    女人味
    栀子花开
    白月光
    刚刚好
    江南
    快乐崇拜
    亲爱的你怎么不在我身边
    小薇
    2002年的第一场雪
    有多少爱可以重来
    我的地盘
    七里香
    情人
     
    老鼠爱大米 老板电话
    冲动的惩罚 七里香
    我不是黄蓉 女生撒娇
    盛夏的果实 坚持到底
    孤单北半球 眉飞色舞
    挪威的森林 可爱女人
    最浪漫的事 老板电话

    CSEEK搜索