麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > Windows > 正文

Windows Mobile下使用HTML_控件

2020-03-01 04:21:07
字體:
來源:轉載
供稿:網友

  在某些特殊的應用場合,我們很想要一個類似IE功能的模塊,定制自己的功能。

  HTML控件現在向我們張開了懷抱。稍稍奇怪的是,它并不完全支持WAP協議。看來,IE還是做了自己的解析。

  首先,我們要注冊一下控件。把Htmlctrl.h包含進來,調用InitHTMLControl()函數,里面的參數為html' target='_blank'>應用程序句柄。以下代碼在MFC中使用:

  VERIFY(InitHTMLControl(AfxGetInstanceHandle()));

  DWORD dwStyle = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS;

  RECT rect;

  GetClientRect(&rect);

  m_hHtmlWnd = ::CreateWindow (DISPLAYCLASS,

  NULL,

  dwStyle,

  rect.left,

  rect.top,

  rect.right,

  rect.bottom,

  m_hWnd,

  0,

  ::AfxGetInstanceHandle(),

  NULL);

  ::SetWindowLong(m_hHtmlWnd, GWL_ID, 12321);

  ::SetFocus(m_hHtmlWnd);

  ::SendMessage(m_hHtmlWnd, WM_SETTEXT, 0, (LPARAM)(LPCTSTR)_T(""));

  在這里,m_hHtmlWnd是某個Dialog的HWND型成員變量。

  然后,在Dialog的WindowProc函數中,使用如下方法:

  switch(message)

  {

  case WM_NOTIFY:

  {

  WCHAR wszURL[1000] = {0};

  NM_HTMLVIEW* pnmHTMLView = (NM_HTMLVIEW*)lParam;

  switch (pnmHTMLView->hdr.code)

  {

  case NM_HOTSPOT://點擊Url

  break;

  case NM_DOCUMENTCOMPLETE://文檔顯示結束

  break;

  case NM_INLINE_IMAGE://顯示圖片

  return TRUE;

  }

  }

  break;

  default:

  break;

  }

  在上面的幾個關鍵點,NM_HOTSPOT是用戶點擊了網頁鏈接,通過訪問pnmHTMLView->szTarget可以得到網頁內容。SendMessage可以將得到的內容賦給控件,控件會自己解析網頁元素。如果有圖片鏈接,將會觸發NM_INLINE_IMAGE動作。此時亦需要通過訪問pnmHTMLView->szTarget來得到圖片。如果得到了圖片的內容,可以使用下面的代碼來顯示:

  INLINEIMAGEINFO imageInfo;

  imageInfo.dwCookie = pnmHTMLView->dwCookie;

  imageInfo.bOwnBitmap = FALSE;

  imageInfo.hbm = hBitmap;

  BITMAP mInfo;

  GetObject(hBitmap, sizeof(BITMAP), (LPBYTE)&mInfo);

  imageInfo.iOrigWidth = mInfo.bmWidth;

  imageInfo.iOrigHeight = mInfo.bmHeight;

  ::SendMessage(pnmHTMLView->hdr.hwndFrom, DTM_SETIMAG

姐妹網名[www.la240.com/html2017/1/3/]E, 0, (LPARAM)(INLINEIMAGEINFO*)&imageInfo);

  上面代碼中hBitmap為圖片位圖句柄。

  我在處理圖片的時候,遇到的問題是。使用SHLoadImageFile函數后,需使用DeleteObject函數釋放句柄內存。否則將有內存泄露。MSDN沒有提及這一現象。

  如果未得到圖片內容,想在網頁相應的位置顯示一個叉,DTM_SETIMAGE參數應改為DTM_IMAGEFAIL。

  值得注意的是,如果我們處理了NM_HOTSPOT或NM_INLINE_IMAGE消息,需要返回TURE或FALSE,不然控件本身會再處理一遍。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 伊人二本二区 | 日韩黄色一级视频 | a视频在线看 | 97干在线 | 免费a级毛片大学生免费观看 | 欧美囗交 | 欧美激情精品久久久久久黑人 | 高清在线观看av | 欧美在线观看视频一区 | 成人做爽爽爽爽免费国产软件 | 小情侣嗯啊哦视频www | 羞羞视频免费网站 | 国产69精品99久久久久久宅男 | 国产精品视频一区二区三区四 | 欧美老逼 | 色视频一区二区 | 福利在线影院 | 欧美巨根 | 日韩精品久久久 | 最近日本电影hd免费观看 | 欧美日韩免费一区 | 黄色免费在线网站 | 久久逼逼 | 欧美性受xxxx人人本视频 | av免费在线不卡 | 欧美18videos性处按摩 | 亚洲综合一区二区三区 | 在线天堂中文字幕 | 激情视频在线播放 | 国产成年人视频 | 91情侣在线偷精品国产 | 奶子吧naiziba.cc免费午夜片在线观看 | 婷婷亚洲一区二区三区 | 欧美一级鲁丝片免费看 | 久久老司机精品视频 | 黄色特级视频 | 九九黄色| 法国性xxx精品hd | 激情大乳女做爰办公室韩国 | 一级做a爰性色毛片免费 | 成人一区二区三区四区 |