资源简介
C++ MP3播放器
代码片段和文件信息
//Download by http://www.codefans.net
#include “stdafx.h“
#include “Hyperlink.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#define TOOLTIP_ID 1
/////////////////////////////////////////////////////////////////////////////
// CHyperlink
CHyperlink::CHyperlink()
{
//链接时光标
m_hlinkCursor = NULL;
//链接时的颜色
m_crlinkColour = RGB( 0 0 238);
//已访问过的颜色
m_crVisitedColour = RGB( 85 26 139);
//位于控件上方的颜色
m_crHoverColour = ::GetSysColor(COLOR_HIGHLIGHT);
//鼠标在控件上方
m_bOverControl = FALSE;
//已访问过url
m_bVisited = FALSE;
//超链接地址的下划线
m_bUnderline = TRUE;
//调整窗口的大小
m_bAdjustToFit = TRUE;
//存放url的字符串
m_strURL.Empty();
}
CHyperlink::~CHyperlink()
{
m_Font.Deleteobject();
}
BEGIN_MESSAGE_MAP(CHyperlink CStatic)
//{{AFX_MSG_MAP(CHyperlink)
ON_CONTROL_REFLECT(STN_CLICKED onclicked)
ON_WM_CTLCOLOR_REFLECT()
ON_WM_SETCURSOR()
ON_WM_MOUSEMOVE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//消息响应函数
//延时发送消息
BOOL CHyperlink::PreTranslateMessage(MSG* pMsg)
{
//延时发送消息
m_ToolTip.RelayEvent(pMsg);
return CStatic::PreTranslateMessage(pMsg);
}
//点击链接地址事件
void CHyperlink::onclicked()
{
int result = (int)GotoURL(m_strURL SW_SHOW);
m_bVisited = (result > HINSTANCE_ERROR);
if (!m_bVisited) {
MessageBeep(MB_ICONEXCLAMATION); // Unable to follow link
ReportError(result);
} else
//url设为已经被访问过的状态
SetVisited();
}
//重画控件事件
HBRUSH CHyperlink::CtlColor(CDC* pDC UINT nCtlColor)
{
//保证控件具有可画性
ASSERT(nCtlColor == CTLCOLOR_STATIC);
if (m_bOverControl)
pDC->SetTextColor(m_crHoverColour);
else if (m_bVisited)
pDC->SetTextColor(m_crVisitedColour);
else
pDC->SetTextColor(m_crlinkColour);
// 设置控件为透明模式
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockobject(NULL_BRUSH);
}
//鼠标移动事件
void CHyperlink::onmousemove(UINT nFlags CPoint point)
{
CStatic::onmousemove(nFlags point);
//鼠标目前正处于url上方
if (m_bOverControl)
{
CRect rect;
GetClientRect(rect);
if (!rect.PtInRect(point))
{
m_bOverControl = FALSE;
ReleaseCapture();
RedrawWindow();
return;
}
}
else // Cursor has just moved over control
{
m_bOverControl = TRUE;
RedrawWindow();
SetCapture();
}
}
//设置鼠标光标的形状
BOOL CHyperlink::OnSetCursor(CWnd* /*pWnd*/ UINT /*nHitTest*/ UINT /*message*/)
{
if (m_hlinkCursor)
{
::SetCursor(m_hlinkCursor);
return TRUE;
}
return FALSE;
}
void CHype
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-11-11 15:38 MP3播放器的开发\
目录 0 2011-11-11 15:38 MP3播放器的开发\mcipla
文件 12147 2010-03-23 10:05 MP3播放器的开发\mcipla
文件 3469 2003-08-21 17:06 MP3播放器的开发\mcipla
文件 1986 2010-03-23 10:05 MP3播放器的开发\mcipla
文件 1277 2003-08-21 14:47 MP3播放器的开发\mcipla
文件 320272 2010-01-16 10:08 MP3播放器的开发\mcipla
文件 1739 2010-01-16 10:21 MP3播放器的开发\mcipla
文件 2143 2010-03-23 10:05 MP3播放器的开发\mcipla
文件 7628 2003-08-21 11:05 MP3播放器的开发\mcipla
文件 537 2002-11-03 00:00 MP3播放器的开发\mcipla
文件 1359 2010-03-23 10:05 MP3播放器的开发\mcipla
文件 8527 2003-08-22 01:18 MP3播放器的开发\mcipla
文件 15662 2010-03-23 10:05 MP3播放器的开发\mcipla
文件 2527 2010-03-23 10:05 MP3播放器的开发\mcipla
目录 0 2011-11-11 15:38 MP3播放器的开发\mcipla
文件 3137 2003-06-01 15:39 MP3播放器的开发\mcipla
文件 2816 2003-05-31 20:55 MP3播放器的开发\mcipla
文件 4736 2003-05-31 21:14 MP3播放器的开发\mcipla
文件 4736 2003-05-31 21:14 MP3播放器的开发\mcipla
文件 2816 2003-05-31 20:55 MP3播放器的开发\mcipla
文件 4736 2003-05-31 21:14 MP3播放器的开发\mcipla
文件 4736 2003-05-31 21:14 MP3播放器的开发\mcipla
文件 2296 2003-06-01 15:37 MP3播放器的开发\mcipla
文件 2296 2003-06-01 15:37 MP3播放器的开发\mcipla
文件 1194 2003-05-30 21:01 MP3播放器的开发\mcipla
文件 1194 2003-05-30 21:01 MP3播放器的开发\mcipla
文件 1194 2003-05-30 21:00 MP3播放器的开发\mcipla
文件 1194 2003-05-30 21:00 MP3播放器的开发\mcipla
文件 149656 2003-06-01 17:18 MP3播放器的开发\mcipla
文件 61032 2003-06-01 08:31 MP3播放器的开发\mcipla
............此处省略26个文件信息
- 上一篇:7参数坐标转换源代码
- 下一篇:IAP支付IOS内购
相关资源
- 用回溯法求子集和的c++代码
- 最小生成树的源代码(C++实现)
- C++编写的简单仓库管理系统
- 优秀开源项目基于VC++和MFC基于VC++和
- MFC编程案例之文件管理器C++
- c++/mfc编写的网络电话,网络语音 程序
- 使用Win32 API的相关知识实现矩阵的乘
- 八皇后图形演示 C++的
- 一个基于C++实现的完整进行FTP应用管
- MPI_并行程序设计中文教程C++/c/Fortan
- C++完整实现DES算法
- 非常简单的C++迷宫程序,是数据结构
- 基于vc++的波形显示源码
- c++ HTTP协议库 httplib
- 大整数乘法 c++ 代码
- 使用C++编写超经典的坦克大战
- MFC实现点对点通信
- C Socket通信多线程数据双向收发VS201
- 数据结构—图书馆管理系统C++编写
- 基于TAO的CORBA程序设计
- C++-小精灵程序
- VC++软键盘源码和QQ软键盘差不多哦
- QM算法C++实现
- 仿雷电游戏OpenGL源码C++版
- arcgis engine C++开发
- c++ 命令设计模式实现撤销重做(CAD系
- QML_MVC_Demo
- VC++制作程序安装向导完整源码实现
- c++常用代码
- Windows屏幕截图工具C++源代码
评论
共有 条评论