MyApp.h和MyApp.cpp

  1. #ifndef MY_APP_H_
  2. #define MY_APP_H_
  3.  
  4. #include <afxwin.h>
  5.  
  6. class CMyApp:public CWinApp
  7. {
  8. public:
  9. virtual BOOL InitInstance();
  10. };
  11.  
  12. #endif
  13.  
  14. =====================================
  15.  
  16. #include "stdafx.h"
  17. #include "MyApp.h"
  18.  
  19. #include "resource.h"
  20. #include "MyCustomCDialog.h"
  21.  
  22. BOOL CMyApp::InitInstance()
  23. {
  24. /*
  25. CDialog dialog;
  26. dialog.Create(IDD_DIALOG_FIRST,NULL);
  27. dialog.ShowWindow(m_nCmdShow);
  28. */
  29.  
  30. CMyCustomCDialog myDialog;
  31. myDialog.DoModal();
  32. //myDialog.ShowWindow(m_nCmdShow);
  33.  
  34. /*myDialog.UpdateData(true);
  35.  
  36. std::string result(myDialog.m_cstrEditFirst.GetBuffer());
  37. myDialog.m_cstrEditFirst.ReleaseBuffer();
  38. */
  39. ::MessageBox(NULL,"Message","Title",MB_OK);
  40. myDialog.DestroyWindow();
  41.  
  42. return true;
  43. }
  44.  
  45. CMyApp myApp;

CMyCustomCDialog.h和 CMyCustomCDialog.cpp

  1. #ifndef MY_CUSTOM_CDIALOG_H_
  2. #define MY_CUSTOM_CDIALOG_H_
  3.  
  4. #include <afxwin.h>
  5. #include "resource.h"
  6. #include <string>
  7.  
  8. class CMyCustomCDialog:public CDialog
  9. {
  10. public:
  11. CMyCustomCDialog(CWnd* pParent=NULL);
  12.  
  13. enum{ IDD=IDD_DIALOG_FIRST };
  14.  
  15. //Overrides
  16. protected:
  17. virtual void DoDataExchange(CDataExchange* pDX);
  18.  
  19. //Implement
  20. protected:
  21. afx_msg void OnDoAction();
  22.  
  23. DECLARE_MESSAGE_MAP()
  24.  
  25. public:
  26. CString m_cstrEditFirst;
  27. };
  28.  
  29. #endif
  30.  
  31. ======================================
  32.  
  33. #include "stdafx.h"
  34. #include "MyCustomCDialog.h"
  35.  
  36. CMyCustomCDialog::CMyCustomCDialog(CWnd* pParent)
  37. :CDialog(CMyCustomCDialog::IDD,pParent)
  38. {
  39.  
  40. }
  41.  
  42. void CMyCustomCDialog::DoDataExchange(CDataExchange* pDX)
  43. {
  44. CDialog::DoDataExchange(pDX);
  45. ::MessageBox(NULL,"Message_DoDataExchange","Title",MB_OK);
  46.  
  47. DDX_Text(pDX,IDC_EDIT_FIRST,m_cstrEditFirst);
  48. }
  49.  
  50. BEGIN_MESSAGE_MAP(CMyCustomCDialog,CDialog)
  51. ON_BN_CLICKED(IDC_BUTTON_ACTION,OnDoAction)
  52. END_MESSAGE_MAP()
  53.  
  54. void CMyCustomCDialog::OnDoAction()
  55. {
  56. HWND hWnd=::GetDlgItem(this->m_hWnd,IDC_EDIT_FIRST);
  57. char* pChar=new char[];
  58. memset(pChar,'\0',);
  59. ::GetWindowText(hWnd,pChar,);
  60. m_cstrEditFirst.Format("%s",pChar);
  61. }

Resource很简单:

sample edit box(CEdit)

  Action(CButton)

关键代码是:

void CMyCustomCDialog::OnDoAction()
{
  HWND hWnd=::GetDlgItem(this->m_hWnd,IDC_EDIT_FIRST);
  char* pChar=new char[100];
  memset(pChar,'\0',100);
  ::GetWindowText(hWnd,pChar,99);
  m_cstrEditFirst.Format("%s",pChar);
}

根据ID获取CEdit的句柄实例的更多相关文章

  1. 利用进程ID获取主线程ID

    利用进程ID获取主线程ID,仅适用于单线程.多线程应区分哪个是主线程,区分方法待验证 (1)好像可以用StartTime最早的,不过通过线程执行时间不一定可靠,要是在最开始就CreateThread了 ...

  2. 线程、线程ID获取

    一.进程ID获取 1.1  当前进程的Id 方法1 通过进程名获取 下面的例子中,也包含了获取该进程下的线程的方法. System.Diagnostics.Process[] processes:bo ...

  3. MFC获取各类指针句柄

    最近有些人在问MFC编程一些要点,有一些句柄的获取.指针的获取是常见的问题,本文将对这些问题做以解释,参考了前人的笔录(见reference),希望能够帮助大家更方便地进行MFC程序开发. 一般我们使 ...

  4. JavaScript通过ID获取元素坐标

    JavaScript通过ID获取元素坐标 function getElementPos(elementId) {    var ua = navigator.userAgent.toLowerCase ...

  5. js中用tagname和id获取元素的3种方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. monkeyrunner之坐标或控件ID获取方法(六)

    Monkeyrunner的环境已经搭建完成,现在对Monkeyrunner做一个简介. Monkeyrunner工具提供了一套API让用户/测试人员来调用,调用这些api可以控制一个Android设备 ...

  7. C#如何在子窗体获取父窗体的实例

    在子窗体可以使用this.Owner来获取父窗体的实例

  8. 通过class和id获取DOM元素的区别

    1.通过id获取DOM元素的方法:document.getElementById("id名") 2.通过class获取DOM元素的方法:document.getElementsBy ...

  9. jqGrid根据ID获取行号

    根据行号获取ID $('#grid').getCell(rownumber,'id') 根据ID获取行号 $('#' + rowid)[0].rowIndex

随机推荐

  1. 解决vs2013使用Git推送到远程仓库报错的问题

    在上一篇<让PowerShell使用Git>中可以让PowerShell运行Git命令,那么就开始使用. 1.从远程仓库克隆项目 GitHub和Git.oschina都是不错的免费托管网站 ...

  2. ccpc-1008-HDU5839Special Tetrahedron-计算几何

    计算几何水题.暴力搞 注意力全部都在02那里,完全没想这道题! /*------------------------------------------------------------------ ...

  3. Vs2012 中使用itoa

    自己在写程序的时候经常用到保存大量的图片,从而对其编号,所以要把整型转换成字符型. 通常自己定义string,而字符使用char[],把整形转换成char类型,然后和string类型相加,但是在VS2 ...

  4. 『设计』Laura.Compute 设计思路

    前言: 前一篇文章 <『开源』也顺手写一个 科学计算器:重磅开源> ,继 Laura.Compute 算法开源之后,有 博客园 园友 希望公开一下 Laura.Compute算法 的 设计 ...

  5. redis async client 与自有框架集成

    hiredis的异步接口已经支持ae libuv libev 和 libevent集成,具体头文件可以参见redis/deps/hiredis/adapters,样例参见redis/deps/hire ...

  6. bower入门

    一.bower简介 bower是一个基于js的包管理工具,类似于java的maven. 官方网站:http://bower.io/ 二.安装bower 使用bower,首先要安装node npm和gi ...

  7. 在线富文本编辑器kindeditor配置(.Net Framework 3.5)

    下载地址:http://kindeditor.net/down.php 解压放在项目要目录下, 在Bin目录下添加引用:LitJSON.dll 在页面头部加: <link rel="s ...

  8. jquery设置元素的readonly与diabled属性方法

    cppy from : http://www.cnblogs.com/RascallySnake/archive/2010/08/03/1791365.html Jquery的api中提供了对元素应用 ...

  9. Java设计模式-桥接模式(Bridge)

    桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化.桥接的用意是:将抽象化与实现化解耦,使得二者可以独立变化,像我们常用的JDBC桥DriverManager一样,JDBC进行连接数据库的时 ...

  10. 替换文件最后一行中的所有e 为 E

    #root@athena5plus:~# cat b    northwest       NW     Charles Main           3.0      .98      3      ...