htmlbrowserdlg.cpp

来自「wince下使用html控件的示例」· C++ 代码 · 共 113 行

CPP
113
字号
// HtmlBrowserDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "HtmlBrowser.h"
#include "HtmlBrowserDlg.h"

#include <Controls/AstroBrowser.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

// CHtmlBrowserDlg 对话框

CHtmlBrowserDlg::CHtmlBrowserDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CHtmlBrowserDlg::IDD, pParent)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CHtmlBrowserDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(CHtmlBrowserDlg, CDialog)
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
	ON_WM_SIZE()
#endif
	//}}AFX_MSG_MAP
	ON_WM_TIMER()
	ON_BN_CLICKED(IDC_BUTTON1, &CHtmlBrowserDlg::OnBnClickedButton1)
END_MESSAGE_MAP()


// CHtmlBrowserDlg 消息处理程序

BOOL CHtmlBrowserDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
 	SetWindowPos(&wndTopMost, 0, 0, 800, 500, 0);
	CRect rect;
	GetClientRect(rect);
// 	this->ModifyStyleEx(0, WS_EX_NOACTIVATE);

	DWORD testTime1 = GetTickCount();
	bws = new AstroBrowser();
	DWORD testTime2 = GetTickCount();
	bws->Create(AfxGetInstanceHandle());
	DWORD testTime3 = GetTickCount();
	CRect bwsRect(rect.left, rect.top+100, rect.right, rect.bottom);
	bws->SetOwner(m_hWnd, &bwsRect);
	bws->NavigateToURL(TEXT("\\Storage Card\\mailxx.htm"));
	DWORD testTime4 = GetTickCount();
// 	SetTimer(1, 5000, NULL);
	bws->Show(true);
	DWORD testTime5 = GetTickCount();

	TRACE(TEXT("%d, %d, %d, %d, total:%d\n"), testTime2-testTime1, testTime3-testTime2, testTime4-testTime3,
		  testTime5-testTime4, testTime5-testTime1);

	// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
	//  执行此操作
	SetIcon(m_hIcon, TRUE);			// 设置大图标
	SetIcon(m_hIcon, FALSE);		// 设置小图标

	// TODO: 在此添加额外的初始化代码


	
	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}

#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
void CHtmlBrowserDlg::OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/)
{
	DRA::RelayoutDialog(
		AfxGetInstanceHandle(), 
		this->m_hWnd, 
		DRA::GetDisplayMode() != DRA::Portrait ? 
			MAKEINTRESOURCE(IDD_HTMLBROWSER_DIALOG_WIDE) : 
			MAKEINTRESOURCE(IDD_HTMLBROWSER_DIALOG));
}
#endif


void CHtmlBrowserDlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	bws->Show(true);
	CDialog::OnTimer(nIDEvent);
}

void CHtmlBrowserDlg::OnBnClickedButton1()
{
	DWORD testTime3 = GetTickCount();

	static bool tag = true;
	if (tag)
	{
		bws->NavigateToURL(TEXT("http://www.astrocom.cn"));
	}
	else
	{
		bws->NavigateToURL(TEXT("\\Storage Card\\mail.htm"));
	}
	tag = !tag;
	DWORD testTime4 = GetTickCount();
	TRACE(TEXT("%d\n"), testTime4-testTime3);
	// TODO: 在此添加控件通知处理程序代码
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?