win2000下的CD播放器按钮

原创 2002年09月19日 12:52:00

最近失业在家,闲来无事,所以将我平时工作、学习时所积攒下来的类,做了个demo,发给大家。先给大家一个旋转按钮控件,跟CD Player一样哦~~

示例代码:http://61.133.87.165/bbs/attachment.php?s=&postid=216360

另外,我这里还有很多类,有我自己写的,翻译的等等。有需要的跟我联系 ytweiwei@cnuninet.com。希望大家能一同学习、进步!

类的文档如下:(为了方便大家,可以在demo里找到这个文档)

--------------------------------------------------------------------------------------------------------

CRoundSliderCtrl<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

          CSliderCtrl

              |

               ----CRoundSliderCtrl

 

该类为CSliderCtrl的派生类。扩充实现了圆形滑块控件的功能,并可以自定义控件内的颜色、图片、设置控件内的文字等。

 

使用该类时的注意事项:

     1、需要将MemDc.h文件加入工程中,考虑到该类的普遍性,如果原工程中已有,请不要重复包含。

     2、添加鼠标指针资源 IDC_CURSOR

     3、该类中用到的某些函数是从Internet上得来,版权仍归其本人所有。

     4、该类在VC6下创建的,由于某些特殊性,在VC.NET下编译将出现不正常现象。

 

使用方法:

     1、在对话框中添加滑块控件,并且改变至你想要的大小。

     2、在ClassWizard中关联与控件的控件变量(比如 m_rscMySlider)

     3、在OnInitDialog()中你可以根据需要来调用SetRange(), SetPos()等函数来设置初始化控件。

 

当滑动控件指针时,它会发送 WM_SCROLL 消息,所以,你可以在在你的对话框中得到滑块的当前位置。比如:

 

void CRoundSliderCtrlDemoDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)

{

     if(pScrollBar->GetDlgCtrlID() == IDC_SLIDER)

     {

          TRACE("WM_HSCROLL by CRoundSliderCtrl received. nPos: %ld? nSBCode: %ld/n", nPos, nSBCode);

     }

    

     CDialog::OnHScroll(nSBCode, nPos, pScrollBar);

}

 

你还可以在派生类里重载OnFormatText函数来自定义控件内显示的文字,比如:

 

CString CFrequenceCtrl::OnFormatText(const CString& strText)

{

     CString strFormattedText;

     strFormattedText.Format("%.1fMHz", 87.5+GetPos()/360.0*20.6);

     return strFormattedText;

}

 

 

操作

-------------------------------------------------------------------------------------------

SetRange      设置控件的可调整范围  

GetRange      得到控件的可调整范围

SetKnobRadius      设置指针的大小

GetKnobRadius      得到指针的大小

SetDragByKnobOnly    指示是否应该仅让指针根着鼠标走

GetDragByKnobOnly    确定是否应该仅让指针根着鼠标走

SetZero            指定开始时指针默认的角度

GetZero            得到开始时指针默认的角度

SetBitmap     为控件设置位图背景

SetKnobColor       设置指针在鼠标左键未按下时的颜色

SetActiveKnobColor   设置指针在鼠标左键按下激活或者拖动时的颜色

SetDialColor       设置滑块控件的背景颜色

 

字符的操作

----------------------------------------------------------------------------------------------------------

SetText            为圆形控件内设置字符

GetText            得到当前控件内的字符串

SetTextColor       指定显示在控件中的字符串颜色

SetFontBold        指示控件中的字体是否为黑体

SetFontUnderline     指示控件中的字体是否具有下划线

SetFontItalic      指示控件中的字体是否为斜体

SetFontSize        设置控件中字体的大小

SetFontName        设置控件中字体的名称

SetShowText        指示控件内部是否要显示文字

 

 

成员函数

------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetRange

void SetRange( int nMin, int nMax, BOOL bRedraw )

 

  数:

     nMin    滑块范围的最小值

     nMax    滑块范围的最大值

        bRedraw 指示是否立即重绘控件

 

  明:

调用该函数设置整个控件的可调整范围,更详细的资料请参见MSDN 中关于 CSliderCtrl::SetRange 的说明

--------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::GetRange

void GetRange( int &nMin, int &nMax )

 

  数:

         nMin 获得的控件范围最小值

         nMax 获得的控件范围最大值

 

  明:

 调用函数来得到当前滑块控件的可调节 最大/最小 值

---------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetText

void SetText(const CString& strNewText)

 

  数:

     strNewText    CString 对象类型的字符串

 

  明:

 调用该函数来为圆形控件内设置字符。在允许控件显示字符时,如果不调用此函数,那么系统将默认在控件内部显示滑块当前的位置值

---------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::GetText

CString GetText() const

 

返回值:

返回当前控件内显示字体的内容

 

  明:

调用此函数来得到当前控件内的字符串,字符是先前调用SetText设置过的,否则返回的结果无任何意义。

--------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetKnobRadius

void SetKnobRadius(const int nNewKnobRadius)

 

  数:

     nNewKnobRadius  涉及指针大小的整型变量,该值最小不能小于5

 

  明:

设置指针的大小

--------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::GetKnobRadius

int GetKnobRadius() const

 

返回值:

 返回当前的指针大小

 

  明:

 得到指针的大小

--------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetDragByKnobOnly

void SetDragByKnobOnly(const bool bDragByKnobOnly)

 

  数:

     bDragByKnobOnly  如果此值为真,那么只有当鼠标指针在此控件指针之上拖动时,控件指针才进行拖动

 

  明:

指示是否应该仅让指针根着鼠标走

-------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::GetDragByKnobOnly

bool GetDragByKnobOnly() const

 

返回值:

如果为真,那么只有当鼠标指针在此控件指针之上拖动时,控件指针才进行拖动

 

  明:

确定是否应该仅让指针根着鼠标走

----------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetZero

void SetZero(const int nZero)

 

  数:

nZero   控件初始化的角度值,该值应该是不小于0和大于360

 

  明:

指定开始时指针默认的角度

---------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::GetZero

int GetZero() const

 

返回值:

0 - 360 的控件初始角度值

 

  明:

得到开始时指针默认的角度

---------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetDialColor

void SetDialColor(const COLORREF crBkgnd)

 

  数:

     crBkgnd   滑块控件背景颜色值,可以是RGB 三色中的任何一种

 

  明:

调用此函数来设置滑块控件的背景颜色;注意:该函数只能在未调用 SetBitmap 时起作用。

----------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetKnobColor

void SetKnobColor(const COLORREF crBkgnd)     

 

  数:

     crBkgnd   指针在鼠标左键未按下时的颜色

 

  明:

调用此函数可以设置指针在鼠标左键未按下时的颜色,系统默认情况下是将指针颜色置为系统COLOR_3DFACE颜色

---------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetActiveKnobColor

void SetActiveKnobColor( const COLORREF crBkgnd )

 

  数:

     crBkgnd   指针在鼠标左键按下激活时的颜色

 

  明:

调用此函数可以设置指针在鼠标左键按下激活或者拖动时的颜色,系统默认情况下是将指针颜色置为系统COLOR_3DFACE颜色

-------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetTextColor

void SetTextColor(const COLORREF crText)

 

   数:

         crText     RGB颜色值

 

  明:

指定显示在控件中的字符串颜色

-------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetFontBold

void SetFontBold(const bool bSet)

 

  数:

         bSet 布尔值,指示字体是否为黑体

 

  明:

指示控件中的字体是否为黑体

--------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetFontUnderline

void SetFontUnderline(const bool bSet)

 

  数:

         bSet布尔值,指示字体是否具有下划线

 

  明:

指示控件中的字体是否具有下划线

--------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetFontItalic

void SetFontItalic(const bool bSet)

 

   数:

         bSet布尔值,指示字体是否为斜体

 

   明:

指示控件中的字体是否为斜体

---------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetFontSize

void SetFontSize(const int nSize)

 

  数:

         nSize     字体的大小的整型变量

 

  明:

设置控件中字体的大小

------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetFontName

void SetFontName(const CString& strFont)

 

  数:

     strFont   关于字体信息的CSting类型的字符串变量

 

  明:

设置控件中字体的名称

------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetShowText

void SetShowText( const BOOL bShow /* = TRUE */)

 

  数:

         bShow     指示控件内部是否要显示当前滑动内容的文字

 

   明:

指示控件内部是否要显示当前滑动内容的文字,默认情况下控件内部无显示内容

------------------------------------------------------------------------------------------------------------

CRoundSliderCtrl::SetBitmap

void SetBitmap( UINT uNewBitID )

 

   数:

     uNewBitID  位图资源ID

 

  明:

调用此函数可以为控件设置位图背景,图片大小最好跟控件大小一致。

 

 

 

Android中如何让自己的播放器被调起

原理分析:当选择一个视频的时候,如果系统有多个播放器,此时会发一个隐式意图,匹配该隐式意图的播放器都能播放 可以参照系统是如何调起系统默认播放器的,在系统上层应用Gallery的AndroidMan...
  • hackcd012
  • hackcd012
  • 2016年12月03日 17:58
  • 126

让VS2010支持Windows2000

用Visual Studio 2010编译的程序无法在Windows 2000,Windows XP SP1上运行,经分析主要原因是VS2010的运行库调用了kernel32.dll的DecodePo...
  • pb8
  • pb8
  • 2015年10月20日 14:21
  • 1090

unity4.6 UGUI做技能CD(补充篇)

哇咔咔,
  • u014313341
  • u014313341
  • 2014年11月12日 16:17
  • 2830

Android简单的实现音乐播放器功能(一个按钮可相应两个事件的方法)

可以通过点击开始音乐进行音乐播放button.setOnClickListener(new View.OnClickListener() { @Override ...
  • qq_39043714
  • qq_39043714
  • 2017年09月09日 15:48
  • 337

把旧光驱改CD播放机的方法

  随着我们自己PC机各项配件的不断升级,或多或少都会淘汰下来一些旧配件。它们是否真的就只能躺在角落里睡大觉呢?能够最大限度利用上这些曾经为我们驰骋沙场,立下赫赫战功的战将吗?那么就要看我们自己是否足...
  • AppleBBS
  • AppleBBS
  • 2005年02月16日 22:57
  • 7231

解决WIN7无法访问WIN2000的共享

症状:在WIN7下的网络里面找到局域网下的WIN2000计算机,连接之后提示:用户名和密码不正确,但用户名和密码是对的。解决方法:WIN7和win2000设置相同的策略 具体操作方法:在WIN7计算机...
  • CNHDJ
  • CNHDJ
  • 2011年04月19日 11:15
  • 4780

video标签监听播放暂停,隐藏下载按钮

/* 隐藏视频默认的下载按钮*/ video::-webkit-media-controls-enclosure {overflow:hidden;} video::-webkit-media-con...
  • xiaomanonyo
  • xiaomanonyo
  • 2017年11月23日 15:22
  • 103

windows 7下的cd命令如何使用?

如果你是要访问H盘得nginx的话,在windows平台下应该这样:       1:'开始''运行''cmd'       2:输入  h:       3:再是  cd nginx pwd...
  • wojiuguowei
  • wojiuguowei
  • 2013年10月11日 16:57
  • 1264

使用SVG开发音乐播放器(二)

SVG音乐播放器,这次完成播放器的单曲播放基本功能
  • wurichengn
  • wurichengn
  • 2016年06月23日 17:18
  • 1175

共享一下我收藏的精简版系统(WIN2000、WIN2003、WINXP)

http://u.115.com/file/f4d78715d9# 118M_WIN9_FIX.rar http://u.115.com/file/f4cd0efcd4# 118M_Wind...
  • fuzhangpeng
  • fuzhangpeng
  • 2012年08月10日 22:17
  • 3718
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win2000下的CD播放器按钮
举报原因:
原因补充:

(最多只允许输入30个字)