VB类似的InputBox为MFC
作者:互联网
介绍 在VB中我一直在开发软件,VC,像你们中的很多人一样,想让用户输入使用VB的InputBox。为此,我在CodeProject上搜索,发现一些解决方案(谢谢)。问题是:全部使用了一些对话框资源来解决问题,最终提高了应用程序的大小。 解决方案 我展示了InputBox生成子类MFC提供的对话框。上周,我发现,“别又问“尼古拉斯Bonamy对话框;讨论了生成子类的对话框来创建一个复选框。我用同样的想法提出一个EditBox让用户输入弹出对话框。谢谢Nic的主意。 子对话框 这依赖于MFC通过AfxHookWindowCreate挂钩()函数。,我们将对话框消息重定向,因此能够赶上WM_INITDIALOG(再一次)。在这里,我们改变窗口的大小,添加EditBox等等…… 最大的优势是,我们班是在对话框本身添加了一个编辑控件的功能;因此我们班来自编辑控件的事件处理。 使用的代码 使用CInputBox,很简单: 添加InpuBox.h,InputBox.cpp到你的项目中 实例化CInputBox对象 调用显示方法和一个字符串。 打电话给()返回时,提供将包含用户输入的字符串。隐藏,复制Code
// CInputBox theInputBox(this); CString strUserInput; theInputBox.Show("Please Enter Some Text Here...", strUserInput); MessageBox(strUserInput);
增强/扩展 我认为你可以进一步增强类通过设置一些方法来实现您的具体需求: 只有数字ES_NUMBER 通过捕捉EN_CHANGE特殊字符 不止一个编辑不同的输入。 学分 我真诚的谢谢: 尼古拉斯Bonamy:激发了我做这样一个实现的代码。 Sadiq:我的朋友,她总是帮助我当我陷在问题。 我的哥哥Ubaid:谁帮我写,讨论了代码。 最重要的是,我的“老师”MSDN:你知道我们大多数人都没有。 本文转载于:http://www.diyabc.com/frontweb/news8388.html
标签:VB,MFC,对话框,CInputBox,strUserInput,InputBox 来源: https://www.cnblogs.com/Dincat/p/13467845.html