CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

如何在程序运行时动态地创建不定数量的文本框?

楼主ml_tt(梵笙)2003-07-05 15:17:38 在 VC/MFC / 界面 提问

正在编制一个评价软件,需要对N个元素进行两两比较(N由数据库中的记录数量决定,为一变量),初步打算在程序中动态的生成N*N个文本框并按矩阵样式摆放。  
    按照有关的文档,单独生成一个或几个数量确定的文本框并不难,只需建立几个指向CEDIT的对象,指定资源ID,然后再使用CEdit::Creat()和ShowWindow()即可。我的问题是如何生成不定数量的文本框? 问题点数:20、回复次数:6Top

1 楼fengqinggao(风清高)回复于 2003-07-05 21:33:31 得分 20

不定数量和定数量,唯一区别在于ID个数,有两个方法,一个是程序静态的定义你所需要的最大数目的ID,然后按顺序创建;或者你查看resource.h文件,看那段ID号不可能使用,你就动态的指定你的ID处于该段,就可以了,例如从10000起,VC自身就用得很少了。Top

2 楼ml_tt(梵笙)回复于 2003-07-07 08:30:05 得分 0

1、如果动态指定ID的话,原来的声明控件变量CEdit   m_pEdit、定义ID#define   IDC_EDIT   1080和分配内存m_pEdit   =   new   CEdit应该如何编写?以前没有做过,不知道该怎么办?能不能详细说明一下?可以加分噢!  
   
  2、现在想想,如果一下子建立一百多个文本框,后来的文本提取也是一个难题,有谁知道还有什么新的办法可以实现这个功能?Top

3 楼fengqinggao(风清高)回复于 2003-07-07 10:31:09 得分 0

如果是动态创建的话,就不能有这些映射的对象了,只能临时获取,如:  
  CEdit   *pEdit   =   (CEdit*)GetDlgItem(IDC_YOURID);  
  然后对pEdit进行操作。  
   
  其实动态创建的ID更容易提取文本,你保证的ID是连续的,就可以这么做了:  
  CStringArray   arrYourText;  
  for(int   i   =   0;   i   <   iYourCtrlNumber;   i++)  
  {  
          CString   strTemp;  
          GetDlgItem(IDC_YOURFIRSTID   +   i)->GetWindowText(strTemp);  
          arrYourText.Add(strTemp);  
  }  
  这样你一次性将所有的Edit控件中的数据读到一个链表中了,你想怎么处理就怎么处理,呵呵。  
   
  比较麻烦的其实是布局,得动态更改对话框的大小,所以,呵呵,你得想想办法,是可以实现的,我做过。Top

4 楼Smile_Tiger(笑面虎)回复于 2003-07-07 11:30:29 得分 0

为什么要创建这么多的edit   box?浪费资源!  
   
  如果只是为了显示,那么创建一个static作为画布,在上面画表格显示数据就行了  
   
  如果有输入,也可以即时创建edit   box(只需要一个)呀Top

5 楼ml_tt(梵笙)回复于 2003-07-10 10:31:00 得分 0

感谢风清高老兄。  
  您讲的挺好的,我正在试着做。如有疑问,还将继续求教。  
   
  to   笑面虎  
    我得输入这些值并提取处理,还有什么更好的办法?Top

6 楼ml_tt(梵笙)回复于 2003-07-10 17:42:13 得分 0

都搞定了。送分还人情喽!Top

相关问题

  • 如何在程序运行时动态创建文本框
  • 请问如何使文本框在程序运行时可以拖动?
  • 创建文本框组?
  • 如何使程序具有记忆功能?比如:在程序运行时我让一个已经设置好的本来不可见的文本框为可见,用什么办法使程序下一次运行时文本框继续可见?
  • 运行时弹出一个窗体,在窗体中有一个文本框和一个按钮,按此按钮后,文本框显示“你好!!”。请给出VC实现以上功能的详细步骤及程序。谢谢!
  • [很难的问题]在窗体上放一个文本框,然后运行程序,在文本框里右击,会出现一个粘贴的菜单,如何把这个菜单去掉?
  • 为什么运行时文本框中不能输入中文???
  • 怎样在运行时设置文本框焦点?
  • 请问CEdit类创建的文本框怎样才能和普通的文本框一样``有3D感`?
  • 知道另一程序中文本框的句柄(hWnd),如何得到该文本框的内容?

关键词

  • 文本框
  • cedit
  • 创建
  • 动态
  • pedit
  • 定数量
  • 生成
  • 程序
  • 提取
  • 处理

得分解答快速导航

  • 帖主:ml_tt
  • fengqinggao

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo