一步步Notepad變Word

來源:互聯網
上載者:User

呵,我太喜歡Notepad了,喜歡用他看代碼,寫代碼,改代碼.用他寫信,寫文章,幾乎除了表格和圖表不用他,別的都用他了.

最近學了點算不上什麼的東西.它可以梗改其他程式的內容.於是就打算把Notepad強化一下.

終於有點時間.開始吧,事物認識過程都是從簡單到複雜,我門才容易接受.

[2006-4-6號]

所以我還是用最簡單的例子先證明一下,改NOTEPAD是很簡單的.

在NOTEPAD上顯示HELLO WORLD!

代碼如下:

 HWND hWnd = ::FindWindow("notepad", NULL);

 TCHAR szBuf[256];
 if (hWnd != NULL)
 {
  CWnd *pwnd = CWnd::FromHandle(hWnd);
  CDC *pdc = pwnd->GetDC();
  ::GetClassName(hWnd, szBuf, 256);
  m_hRoot = m_tcwnd.InsertItem(szBuf);
  EnumChildWindows(hWnd, EnumWindow, (LPARAM)(void*)this);
  CRect rt;
  pwnd->GetWindowRect(& rt);
  pdc->TextOut(10, 10, "Hello World!");
 }

void CFindwnd03Dlg::AddOneWnd(HWND hWnd)
{
 TCHAR szBuf[512];
 ::GetClassName(hWnd, szBuf, 512);
 if (lstrcmpi(szBuf, "edit") == 0)
 {
  CWnd *pwnd = CWnd::FromHandle(hWnd);
  pwnd->ShowWindow(SW_HIDE);
 }
 m_tcwnd.InsertItem(szBuf, m_hRoot);
}

BOOL CALLBACK CFindwnd03Dlg::EnumWindow(HWND hWnd, LPARAM lParam)
{
 CFindwnd03Dlg *pfd = (CFindwnd03Dlg*)lParam;
 if (hWnd != NULL)
 {
  pfd->AddOneWnd(hWnd);
 }
 return TRUE;
}

高手一定看得懂,一點看頭都沒有,如果你是新手,我有空再寫注釋上去.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.