⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 openurldlg.cpp

📁 一个多窗口的浏览器的程序benbrowse
💻 CPP
字号:
// OpenUrlDlg.cpp : implementation file
//

#include "stdafx.h"
#include "benbenbrowser.h"
#include "OpenUrlDlg.h"
#include "generaldata.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// COpenUrlDlg dialog


COpenUrlDlg::COpenUrlDlg(CWnd* pParent /*=NULL*/)
	: CDialog(COpenUrlDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(COpenUrlDlg)
	m_checknew = FALSE;
	m_strurl = _T("");
	//}}AFX_DATA_INIT
}


void COpenUrlDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(COpenUrlDlg)
	DDX_Control(pDX, IDC_COMBO_URL, m_comUrl);
	DDX_Check(pDX, IDC_CHECK_NEW, m_checknew);
	DDX_CBString(pDX, IDC_COMBO_URL, m_strurl);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(COpenUrlDlg, CDialog)
	//{{AFX_MSG_MAP(COpenUrlDlg)
	ON_BN_CLICKED(IDC_BUTTON_BROWSE, OnButtonBrowse)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// COpenUrlDlg message handlers

BOOL COpenUrlDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here

	CEdit * pMyEdit = m_comUrl.GetEditCtrl();
	if (pMyEdit)
	 {
     // enable auto complete for m_myCombo
		SetupForAutoComplete(pMyEdit->m_hWnd, SHACF_URLHISTORY);
	 }
	LoadHistoryUrls();
	SetLanguage();
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void COpenUrlDlg::SetLanguage()
{
	CString wintextsrc;
	CString wintextnew;
	if(this)
	{
		this->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		this->SetWindowText(wintextnew);
	}
	CWnd *wnd=GetDlgItem(IDOK);
	if(wnd)
	{
		wnd->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		wnd->SetWindowText(wintextnew);
	}

	wnd=GetDlgItem(IDCANCEL);
	if(wnd)
	{
		wnd->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		wnd->SetWindowText(wintextnew);
	}
	
	wnd=GetDlgItem(IDC_BUTTON_BROWSE);
	if(wnd)
	{
		wnd->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		wnd->SetWindowText(wintextnew);
	}
	
	wnd=GetDlgItem(IDC_CHECK_NEW);
	if(wnd)
	{
		wnd->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		wnd->SetWindowText(wintextnew);
	}
	
	wnd=GetDlgItem(IDC_STATIC_PROMPT);
	if(wnd)
	{
		wnd->GetWindowText(wintextsrc);
		GetText(wintextsrc,wintextnew,global_item_text);
		wnd->SetWindowText(wintextnew);
	}
	
}

void COpenUrlDlg::LoadHistoryUrls()
{
	TCHAR           sz[MAX_PATH];
	TCHAR           sz2[MAX_PATH];
	TCHAR           szPath[MAX_PATH];
	HKEY            hKey;
	DWORD           dwSize;
	if(RegOpenKey(HKEY_CURRENT_USER, _T("Software\\Microsoft\\Internet Explorer\\TypedUrls"), &hKey) != ERROR_SUCCESS)
	{
		TRACE0("Favorites folder not found\n");
		return ;
	}
	CString URL;
	dwSize = sizeof(sz);
	for(int i=0;i<25;i++)
	{
		dwSize = sizeof(sz);
		memset(sz,0,dwSize);
		if(RegEnumValue(hKey,i,szPath,&dwSize,NULL,NULL,(LPBYTE)sz, &dwSize)!=ERROR_SUCCESS)
			continue;
		ExpandEnvironmentStrings(sz, sz2, MAX_PATH);
		URL=sz2;
		if(URL.GetLength()>0)
		{
			COMBOBOXEXITEM item;
			item.mask = CBEIF_TEXT;
			item.iItem = 0;
			item.pszText = (LPTSTR)(LPCTSTR)URL;
			m_comUrl.InsertItem(&item);
		}
	}
	RegCloseKey(hKey);

}

void COpenUrlDlg::OnButtonBrowse() 
{
	// TODO: Add your control notification handler code here
	CString str;
	//tText(str,strNew,global_item_text);
	str="HTML Files(*.htm,*.html)|*.htm;*.html|Text Files(*.txt)|*.txt|GIF Files(*.gif)|*.gif|JPEG Files(*.jpg;*.jpeg)|*.jpg;*.jpeg|AU Files(*.au)|*.au|AIFF Files(*.aif;*.aiff)|*.aif;*.aiff|XBM Files(*.xbm)|*.xbm|All Files(*.*)|*.*||";
	CFileDialog fileDlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, str);
	if(fileDlg.DoModal() == IDOK)
		m_comUrl.SetWindowText(fileDlg.GetPathName());
}

⌨️ 快捷键说明

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