// WebBrowserDemoDlg.cpp: 实现文件
//
#include "stdafx.h"
#include "WebBrowserDemo.h"
#include "WebBrowserDemoDlg.h"
#include "afxdialogex.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 用于应用程序“关于”菜单项的 CAboutDlg 对话框
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
// 对话框数据
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_ABOUTBOX };
#endif
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 实现
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialogEx(IDD_ABOUTBOX)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()
// CWebBrowserDemoDlg 对话框
CWebBrowserDemoDlg::CWebBrowserDemoDlg(CWnd* pParent /*=NULL*/)
: CDialog(IDD_WEBBROWSERDEMO_DIALOG, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CWebBrowserDemoDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_EXPLORER, m_ctrlWeb);
}
BEGIN_MESSAGE_MAP(CWebBrowserDemoDlg, CDialog)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BTN_FORWARD, &CWebBrowserDemoDlg::OnBnClickedBtnForward)
ON_BN_CLICKED(IDC_BTN_BACK, &CWebBrowserDemoDlg::OnBnClickedBtnBack)
ON_BN_CLICKED(IDC_BTN_REFRESH, &CWebBrowserDemoDlg::OnBnClickedBtnRefresh)
END_MESSAGE_MAP()
// CWebBrowserDemoDlg 消息处理程序
BOOL CWebBrowserDemoDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// 将“关于...”菜单项添加到系统菜单中。
// IDM_ABOUTBOX 必须在系统命令范围内。
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// 设置此对话框的图标。 当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标
// TODO: 在此添加额外的初始化代码
m_ctrlWeb.Navigate(L"https://www.baidu.com/", NULL, NULL, NULL, NULL);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
void CWebBrowserDemoDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
// 如果向对话框添加最小化按钮,则需要下面的代码
// 来绘制该图标。 对于使用文档/视图模型的 MFC 应用程序,
// 这将由框架自动完成。
void CWebBrowserDemoDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 用于绘制的设备上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// 使图标在工作区矩形中居中
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// 绘制图标
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
//当用户拖动最小化窗口时系统调用此函数取得光标
//显示。
HCURSOR CWebBrowserDemoDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
BEGIN_EVENTSINK_MAP(CWebBrowserDemoDlg, CDialog)
ON_EVENT(CWebBrowserDemoDlg, IDC_EXPLORER, 105, CWebBrowserDemoDlg::CommandStateChangeExplorer, VTS_I4 VTS_BOOL)
END_EVENTSINK_MAP()
void CWebBrowserDemoDlg::CommandStateChangeExplorer(long Command, BOOL Enable)
{
// TODO: 在此处添加消息处理程序代码
switch (Command)
{
case 1:
{
GetDlgItem(IDC_BTN_FORWARD)->EnableWindow(Enable);
break;
}
case 2:
{
GetDlgItem(IDC_BTN_BACK)->EnableWindow(Enable);
break;
}
case 3:
{
GetDlgItem(IDC_BTN_REFRESH)->EnableWindow(Enable);
break;
}
}
}
void CWebBrowserDemoDlg::OnBnClickedBtnForward()
{
// TODO: 在此添加控件通知处理程序代码
m_ctrlWeb.GoForward();
}
void CWebBrowserDemoDlg::OnBnClickedBtnBack()
{
// TODO: 在此添加控件通知处理程序代码
m_�
没有合适的资源?快使用搜索试试~ 我知道了~
visual Studio2017使用MFC & WebBrowser控件的实例
共42个文件
tlog:9个
h:6个
cpp:4个
4星 · 超过85%的资源 需积分: 50 184 下载量 146 浏览量
2018-02-21
15:22:07
上传
评论 3
收藏 19.11MB ZIP 举报
温馨提示
平台:visual Studio 2017 语言 :C++MFC 控件 :WebBrowser 描述:使用WebBrowser控件,做成一个简易的浏览器,可以进行最基础的网页浏览操作。通过此案例,可以学到基础的WebBrowser的操作,之后就可以在自己所做的程序中嵌入一些网站,丰富软件内容
资源推荐
资源详情
资源评论
收起资源包目录
WebBrowserDemo.zip (42个子文件)
WebBrowserDemo
WebBrowserDemo.sln 1KB
Debug
WebBrowserDemo.ilk 1.56MB
WebBrowserDemo.pdb 2.8MB
WebBrowserDemo.exe 215KB
WebBrowserDemo
WebBrowserDemo.vcxproj 10KB
WebBrowserDemo.cpp 4KB
resource.h 2KB
WebBrowserDemo.aps 107KB
Debug
vc141.pdb 6.59MB
WebBrowserDemo.log 116B
explorer1.obj 31KB
WebBrowserDemoDlg.obj 70KB
WebBrowserDemo.pch 54.31MB
vc141.idb 2.35MB
WebBrowserDemo.res 68KB
WebBrowserDemo.obj 76KB
stdafx.obj 941KB
WebBrowserDemo.tlog
rc.command.1.tlog 484B
CL.read.1.tlog 106KB
link.read.1.tlog 7KB
rc.read.1.tlog 4KB
link.write.1.tlog 1KB
CL.write.1.tlog 4KB
WebBrowserDemo.lastbuildstate 209B
link.command.1.tlog 2KB
CL.command.1.tlog 3KB
rc.write.1.tlog 290B
WebBrowserDemoDlg.h 2KB
WebBrowserDemoDlg.cpp 8KB
explorer1.h 15KB
stdafx.h 3KB
WebBrowserDemo.h 896B
explorer1.cpp 557B
res
WebBrowserDemo.ico 66KB
Toolbar.bmp 598B
WebBrowserDemo.rc2 684B
Toolbar256.bmp 3KB
WebBrowserDemo.rc 13KB
WebBrowserDemo.vcxproj.user 237B
stdafx.cpp 238B
WebBrowserDemo.vcxproj.filters 2KB
targetver.h 370B
共 42 条
- 1
资源评论
- 闲散自然2019-06-13可以,可以
- 干点活2018-05-26还没有运行起来,运行起来再来补充
- 唐茂2019-03-11谢谢分享!!!
- masm321565622020-10-12还行。。。。
- ahmatjan50002019-03-22不能用。。有错
探索;实践
- 粉丝: 20
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功