少儿启蒙歌曲播放器

这是2008年给1岁的大儿子写的小程序,,先看看界面效果吧

主界面

播放flash歌曲

用的技术都比较简单,在当时flash可是相当流行啊,就像现在的mp4,mp3

用了flash播放器,贴代码:


// Show.cpp : 实现文件
//

#include "stdafx.h"
#include "XzxLike.h"
#include "Show.h"
#include ".\show.h"
#include "XzxLikeDlg.h"


// CShow 对话框

IMPLEMENT_DYNAMIC(CShow, CDialog)
CShow::CShow(CWnd* pParent /*=NULL*/)
	: CDialog(CShow::IDD, pParent)
{
	m_nIndex=0;
}

CShow::~CShow()
{
}

void CShow::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_SHOCKWAVEFLASH1, m_flash);
}


BEGIN_MESSAGE_MAP(CShow, CDialog)
	ON_BN_CLICKED(IDC_BUTTON1, OnBnClickedButton1)
	ON_BN_CLICKED(IDC_BUTTON5, OnBnClickedButton5)
	ON_WM_SIZE()
	ON_WM_SETCURSOR()
END_MESSAGE_MAP()


// CShow 消息处理程序

BOOL CShow::OnInitDialog()
{
	CDialog::OnInitDialog();

	m_flash.m_pMain=m_pMain;
	m_flash.put_BackgroundColor(RGB(241,222,201)); //bgr
	return TRUE;  // return TRUE unless you set the focus to a control
	// 异常: OCX 属性页应返回 FALSE
}

void CShow::InitPlay()
{	
	m_nIndex=0;
	ACTInfo eg=m_pacts->GetAt(m_nIndex);
	CString szMovie=m_pMain->GetSWFName(*pszDir,eg.nIDName);
	if(szMovie.IsEmpty())
		return;
	m_flash.LoadMovie(0,szMovie);
	if(m_pMain->m_nCurModle==4&&(m_nIndex==0||m_nIndex==1))
		m_flash.GotoFrame(1);
	else
		m_flash.GotoFrame(1);
	m_flash.Play();	
	//if(m_flash.get_Playing())
	//{
	//	m_flash.StopPlay();
	//	m_flash.GotoFrame(0);
	//	return;
	//}

}

void CShow::Play()
{	
	this->Stop();
	ACTInfo eg=m_pacts->GetAt(m_nIndex);
	CString szMovie=m_pMain->GetSWFName(*pszDir,eg.nIDName);
	m_flash.LoadMovie(0,szMovie);
	if(szMovie.IsEmpty())
		return;
	if(m_pMain->m_nCurModle==4&&(m_nIndex==0||m_nIndex==1))
		m_flash.GotoFrame(1);
	else
		m_flash.GotoFrame(1);
	m_flash.Play();	

	int   x=GetSystemMetrics(SM_CXSCREEN);   
	int   y=GetSystemMetrics(SM_CYSCREEN); 
	MoveWindow(100,100,x-200,y-200);
}

void CShow::Up()
{
	m_nIndex--;
	if(m_nIndex<0)
		m_nIndex=0;
	Play();
}

void CShow::Down()
{
	int nCount=(int)m_pacts->GetCount();
	m_nIndex++;
	if(m_nIndex>nCount-1)
		m_nIndex=nCount-1;
	Play();
}

void CShow::PlayOrStop()
{
	if(m_flash.get_Playing())
	{
		m_flash.StopPlay();
	}
	else
		m_flash.Play();
}

void CShow::OnBnClickedButton1()//播放
{

}

void CShow::OnBnClickedButton5()//返回
{
	m_flash.StopPlay();
	m_pMain->ShowItem(0);
}

void CShow::Stop()
{
	m_flash.StopPlay();
}

void CShow::OnSize(UINT nType, int cx, int cy)
{
	CDialog::OnSize(nType, cx, cy);
	if(m_flash.m_hWnd)
	{
		m_flash.MoveWindow(0,0,cx,cy);
	}
	
}

void CShow::OnOK()
{
}

void CShow::OnCancel()
{
}

bool CShow::SetFullScreen(BOOL inEnabled)
{
	static RECT  rect;
	//static RECT  rect1;
	static LONG  lStyle=0;
	if(inEnabled)
	{
		int nXFull=::GetSystemMetrics(SM_CXSCREEN);
		int nYFull=::GetSystemMetrics(SM_CYSCREEN);
		this->GetWindowRect(&rect);
		lStyle = GetWindowStyle(GetSafeHwnd());
		SetWindowLong(this->GetSafeHwnd(), GWL_STYLE, WS_POPUP | WS_VISIBLE);
		SetWindowPos(&::CWnd::wndTop,0,0,nXFull,nYFull,SWP_NOACTIVATE);
		m_pMain->m_gif.ShowWindow(SW_HIDE);
	}
	else
	{
		SetWindowLong(m_hWnd, GWL_STYLE, lStyle);
		SetWindowPos(&::CWnd::wndTop,rect.left,rect.top,rect.right-rect.left,rect.bottom-rect.top,SWP_NOACTIVATE);
		m_pMain->m_gif.ShowWindow(SW_SHOW);
	}
	return true;//SUCCEEDED(hr);

	return false;
}

bool CShow::GetFullScreen(void)
{
	int nXFull=::GetSystemMetrics(SM_CXSCREEN);
	int nYFull=::GetSystemMetrics(SM_CYSCREEN);
	RECT  rect;
	this->GetWindowRect(&rect);
	if((rect.bottom-rect.top)>=nYFull&&(rect.right-rect.left)>=nXFull)
		return true;
	else
		return false;

	return false;
}

BOOL CShow::OnWndMsg(UINT message, WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
	if(WM_USER+100==message)
	{	
		if(wParam==0&&lParam==0)
		{
			BOOL bFull=GetFullScreen();
			SetFullScreen(!bFull);
		}
		if(wParam==0&&lParam==1)
		{
			SetFullScreen(0);
		}
		if(wParam==1&&lParam==0)
		{
			SetFullScreen(1);
		}

	}

	return CDialog::OnWndMsg(message, wParam, lParam, pResult);
}

BOOL CShow::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
	if(m_pMain->m_hCur)
	{
		::SetCursor(m_pMain->m_hCur);
		return true;
	}

	return CDialog::OnSetCursor(pWnd, nHitTest, message);
}

 界面富有童真风格,希望能勾起你童年的回忆!

项目源码下载地址:

https://download.csdn.net/download/xjb2006/10722976

谢谢,再见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周星星的星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值