EditDlg.cpp 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. // EditDlg.cpp : 实现文件
  2. //
  3. #include "stdafx.h"
  4. #include "resource.h"
  5. #include "EditDlg.h"
  6. // CEditDlg 对话框
  7. IMPLEMENT_DYNAMIC(CEditDlg, CDlgControlItem)
  8. CEditDlg::CEditDlg(CWnd* pParent /*=NULL*/)
  9. : CDlgControlItem(IDD_EDIT, pParent)
  10. {
  11. m_dwStyle = 0;
  12. }
  13. CEditDlg::~CEditDlg()
  14. {
  15. }
  16. void CEditDlg::DoDataExchange(CDataExchange* pDX)
  17. {
  18. CDlgControlItem::DoDataExchange(pDX);
  19. DDX_Control(pDX,IDC_EDIT5,m_Edit);
  20. DDX_Control(pDX,IDC_EDIT6,m_SkinEdit1);
  21. DDX_Control(pDX,IDC_EDIT7,m_SkinEdit2);
  22. //DDX_Control(pDX,IDC_EDIT8,m_SkinEdit5);
  23. }
  24. BEGIN_MESSAGE_MAP(CEditDlg, CDlgControlItem)
  25. ON_BN_CLICKED(IDC_BUTTON2, &CEditDlg::OnBnClickedButton2)
  26. ON_BN_CLICKED(IDC_BUTTON3, &CEditDlg::OnBnClickedButton3)
  27. ON_BN_CLICKED(IDC_BUTTON4, &CEditDlg::OnBnClickedButton4)
  28. ON_BN_CLICKED(IDC_BUTTON8, &CEditDlg::OnBnClickedButton8)
  29. ON_BN_CLICKED(IDC_BUTTON9, &CEditDlg::OnBnClickedButton9)
  30. ON_BN_CLICKED(IDC_BUTTON10, &CEditDlg::OnBnClickedButton10)
  31. ON_BN_CLICKED(IDC_BUTTON11, &CEditDlg::OnBnClickedButton11)
  32. ON_BN_CLICKED(IDC_BUTTON13, &CEditDlg::OnBnClickedButton13)
  33. ON_BN_CLICKED(IDC_BUTTON12, &CEditDlg::OnBnClickedButton12)
  34. ON_BN_CLICKED(IDC_BUTTON1, &CEditDlg::OnBnClickedButton1)
  35. ON_BN_CLICKED(IDC_EDIT8, &CEditDlg::OnBnClickedPassWord)
  36. ON_BN_CLICKED(IDC_EDIT9, &CEditDlg::OnBnClickedFind)
  37. END_MESSAGE_MAP()
  38. void CEditDlg::DrawClientArea( CDC*pDC,int nWidth,int nHeight )
  39. {
  40. //
  41. }
  42. // CEditDlg 消息处理程序
  43. BOOL CEditDlg::OnInitDialog()
  44. {
  45. CDlgControlItem::OnInitDialog();
  46. m_dwStyle = GetDlgItem(IDC_EDIT5)->GetStyle();
  47. HDC hParentDC = GetBackDC();
  48. m_SkinEdit1.SetBackNormalImage(TEXT("Res\\Edit\\frameBorderEffect_normalDraw.png"), CRect(3,3,3,3));
  49. m_SkinEdit1.SetBackHotImage(TEXT("Res\\Edit\\frameBorderEffect_mouseDownDraw.png"), CRect(3,3,3,3));
  50. m_SkinEdit1.SetDefaultText(TEXT("这是默认字符串"));
  51. m_SkinEdit1.SetDefaultTextMode(TRUE);
  52. m_SkinEdit1.SetParentBack(hParentDC);
  53. m_SkinEdit2.SetBackNormalImage(TEXT("Res\\Edit\\frameBorderEffect_normalDraw.png"), CRect(3,3,3,3));
  54. m_SkinEdit2.SetBackHotImage(TEXT("Res\\Edit\\frameBorderEffect_mouseDownDraw.png"), CRect(3,3,3,3));
  55. //m_SkinEdit2.SetIconImage(TEXT("Res\\Edit\\keyboard.png"));
  56. m_SkinEdit2.SetWindowText(TEXT("这个控件是失效的"));
  57. //m_SkinEdit2.SetWindowPos(NULL,0,0,150,28,SWP_NOMOVE);
  58. m_SkinEdit2.SetParentBack(hParentDC);
  59. RenderEngine->AddFont(TEXT("宋体"),8,false,false,false);
  60. m_SkinEdit3.Create(0,CRect(0,0,0,0),this,IDC_EDIT8);
  61. m_SkinEdit3.SetBackNormalImage(TEXT("Res\\Edit\\frameBorderEffect_normalDraw.png"), CRect(3,3,3,3));
  62. m_SkinEdit3.SetBackHotImage(TEXT("Res\\Edit\\frameBorderEffect_mouseDownDraw.png"), CRect(3,3,3,3));
  63. m_SkinEdit3.SetIconImage(TEXT("Res\\Edit\\keyboard.png"));
  64. m_SkinEdit3.SetPasswordChar(0x25CF);
  65. m_SkinEdit3.SetFont(CFont::FromHandle(RenderEngine->GetFont(0)));
  66. m_SkinEdit3.SetClientPoint(CPoint(3,3));
  67. m_SkinEdit3.SetParentBack(hParentDC);
  68. m_SkinEdit3.MoveWindow(240,280,210,24);
  69. static CSkinEdit m_SkinEdit4;
  70. m_SkinEdit4.SubclassWindow(GetDlgItem(IDC_EDIT2)->GetSafeHwnd());
  71. m_SkinEdit4.SetBackNormalImage(TEXT("Res\\Edit\\frameBorderEffect_normalDraw.png"), CRect(3,3,3,3));
  72. m_SkinEdit4.SetBackHotImage(TEXT("Res\\Edit\\frameBorderEffect_mouseDownDraw.png"), CRect(3,3,3,3));
  73. m_SkinEdit4.SetScrollImage(&m_SkinEdit4,TEXT("Res\\Scroll\\SKIN_SCROLL.bmp"));
  74. m_SkinEdit4.SetParentBack(hParentDC);
  75. m_SkinEdit5.Create(0,CRect(0,0,0,0),this,IDC_EDIT9);
  76. m_SkinEdit5.SetBackNormalImage(TEXT("Res\\Edit\\searchback.png"), CRect(9,9,9,9));
  77. RenderEngine->AddFont(TEXT("宋体"),12,false,false,false);
  78. m_SkinEdit5.SetFont(CFont::FromHandle(RenderEngine->GetEndFont()));
  79. m_SkinEdit5.SetIconImage(TEXT("Res\\Edit\\group_seach.png"),true);
  80. m_SkinEdit5.SetClientPoint(CPoint(3,5));
  81. m_SkinEdit5.SetParentBack(hParentDC);
  82. m_SkinEdit5.MoveWindow(220,245,210,28);
  83. return TRUE; // return TRUE unless you set the focus to a control
  84. // 异常: OCX 属性页应返回 FALSE
  85. }
  86. void CEditDlg::OnBnClickedButton2()
  87. {
  88. CEdit *pEdit = (CEdit *)GetDlgItem(IDC_EDIT5);
  89. static bool bSet = true;
  90. SetWindowLong(pEdit->GetSafeHwnd(),GWL_STYLE,bSet?m_dwStyle|ES_NUMBER:m_dwStyle);
  91. pEdit->SetWindowText(TEXT("输入一下其他字符试试"));
  92. pEdit->SetSel(0,-1);
  93. pEdit->SetFocus();
  94. bSet=!bSet;
  95. }
  96. void CEditDlg::OnBnClickedButton3()
  97. {
  98. CEdit *pEdit = (CEdit *)GetDlgItem(IDC_EDIT5);
  99. static bool bSet = true;
  100. pEdit->SetPasswordChar(bSet?'*':NULL);
  101. pEdit->SetSel(0,-1);
  102. pEdit->SetFocus();
  103. bSet=!bSet;
  104. }
  105. void CEditDlg::OnBnClickedButton4()
  106. {
  107. CString str;
  108. //第一种
  109. // CEdit *pEdit = (CEdit *)GetDlgItem(IDC_EDIT5);
  110. // pEdit->GetWindowText(str);
  111. //第二种
  112. GetDlgItemText(IDC_EDIT5,str);
  113. MessageBox(str);
  114. }
  115. void CEditDlg::OnBnClickedButton8()
  116. {
  117. m_Edit.SetSel(0,-1);
  118. m_Edit.Copy();
  119. }
  120. void CEditDlg::OnBnClickedButton9()
  121. {
  122. m_Edit.Paste();
  123. }
  124. void CEditDlg::OnBnClickedButton10()
  125. {
  126. m_Edit.SetSel(0,-1);
  127. m_Edit.Cut();
  128. }
  129. void CEditDlg::OnBnClickedButton11()
  130. {
  131. m_Edit.SetSel(0,-1);
  132. m_Edit.Clear();
  133. }
  134. void CEditDlg::OnBnClickedButton13()
  135. {
  136. if( m_Edit.CanUndo() )
  137. m_Edit.Undo();
  138. }
  139. void CEditDlg::OnBnClickedButton12()
  140. {
  141. static BOOL bOnlyRead = TRUE;
  142. m_Edit.SetReadOnly(bOnlyRead);
  143. bOnlyRead = !bOnlyRead;
  144. }
  145. void CEditDlg::OnBnClickedButton1()
  146. {
  147. OpenLink(TEXT("http://www.gymsaga.com/project/397.html"));
  148. }
  149. void CEditDlg::OnBnClickedPassWord()
  150. {
  151. CString str;
  152. m_SkinEdit3.GetWindowText(str);
  153. MessageBox(str);
  154. }
  155. void CEditDlg::OnBnClickedFind()
  156. {
  157. CString str;
  158. m_SkinEdit5.GetWindowText(str);
  159. MessageBox(TEXT("搜索")+str);
  160. }