
1需求分析NBA活跃球星随着NBA(美国国家篮球协会)在过去的二十年中在中国市场的扩张,如今NBA的忠实拥护者如今已在中国积累了越来越多的资源,并且越来越多与中国,如王志智,姚明,易建联等随着中国球员加入NBA,更多的中国人将开始了解NBA. 结果,NBA收到了NBA超级巨星的各种信息,例如视频,个人数据,周围的故事,事件等. 现在,这些信息不仅被Internet上的各种人使用,而且对于那些在日常生活中热爱NBA的人也值得了解. 我也是NBA球迷. 在收集的材料中,我想在互联网上查看“活跃的NBA超级巨星的数据”,但我没有发现只有“ 50大”(NBA历史上排名前50的超级巨星))信息. 活跃超级巨星的大多数数据都是分散的记录. 此刻,“ 50”只能是NBA的或历史,而当前活跃的超级巨星是当前球迷的目标,因此一整套活跃的超级巨星信息可以认为是绝对值得收藏的. 但是整理一条信息很简单,只需在各个网站中搜索超级巨星的名字,相关信息自然就会弹出. 如何使其更加集成,如何使其与我们当前的操作理念更一致不是单个窗口纯文字文档.

设计一个基于的,多窗口的,形式多样的,这是MFC程序设计的主要方向. MFC编程由于该程序基于,因此尽管必须建立,但是有许多方法可以在MFC中创建,在此期间最简单的操作是Access. 可以通过ODBC调用. 形式上有许多突破性的方法,例如连接多媒体,插入视图rmvb用什么播放器打开,添加功能等. 数据流程图超级明星数据ͼƬ视频2系统设计轮廓设计2在需求分析中提到,已建立的程序可以实现多窗口调用并具有. 首先,建立的程序是基于的多文档格式MFC程序. 整个程序可以分为三个模块. 架构设计对我设计的程序进行分析,这三个模块没有相互调用,但是其他两个模块由第一个模块以窗口停靠按钮的形式调用. 这种结构的存在属于“层次结构”. 高层次的工作基于低层次的工作,将复杂的事情转变为多个渐进事件. 模块设计如上所述,此程序设计中有三个模块,其中两个以窗口形式存在,另一个模块是强耦合(耦合)的,但是这两个模块是完全独立的,它们属于强内聚性. 这样的设计不是“强内聚,弱耦合”. 可以在程序中作为窗口运行的两个模块已关闭.

详细的设计2.使用ODBC来实现Access驱动程序(WIN7在主控制面板的右上角输入“ ODBC”)33.创建一个MFC程序,以多个文件(MDI)格式打开,并在第三部分,选择“读取”,在的ODBC的下拉列中选择刚创建的驱动程序的Access文档,完成后单击“完成”. 3.在对话框的“访问”表中添加一个与对应列相对应的动态文本框,然后添加相关的静态文本. 4.对应于列名以更改这部分静态文本的属性. 5.在类向导(MFC ClassWizard)中,添加每一列的类(在最后一步之后,单击“确定”按钮,VC将保存设置). 6.通过这种方式,可以实现数据的直观表示,下一步是添加“查询功能”. 创建一个新对话框,添加一个动态文本框并删除“取消”按钮,然后修改该动态文本的ID,然后(对话框)向其中添加一个新类. 然后在主面板上添加一个按钮,将属性名称更改为“ Superstar Search”,然后创建一个类向导,5给他单击命令(BN_CLICKED),然后编辑(EDIT)建立消息映射,输入相应的代码(将在本章中进行解释)来实现查询功能. 7.插入播放器控件. 今天,MFC的开发非常先进. 它不仅具有相对较大的控件库,而且还可以在Windows上找到注册的软件控件.
![]()
这样,调用控件特别方便. Windows中常见的媒体播放器包括Media Player,Storm Player等. 我选择插入的空间是Media Player,因为它是Windows附带的,因此可以增强程序的性. 首先创建一个对话框,然后单击鼠标右键,插入一个控件,然后在列表中选择Windows Media Player. 然后,传统的Media Player窗口将出现在对话框中. 右键单击此窗口可为此控件添加相关的数据成员. 方法与图4相同. 创建一个类向导,打开Memble Variables,但要注意以下对话框6这些是与WMP(Windows Media Player)相关的类,实际上,某些部分是多余的,因为它们为了方便起见,只需单击“确定”,就不会在此处给出说明. 这时,播放器只有一半的生命,我们需要向其中添加一个未完成的项目. 添加一个按钮,将其属性名称更改为“打开”,然后为其创建一个单击命令(BN_CLICKED),并在“编辑”中向其添加消息映射(在代码的下一章中可见). 最后,主窗口上的键也应连接到该窗口,方法与6相同.

8. 最后插入一些图片以美化窗口. 选择图片并将其另存为“ 256色位图”,然后返回到MFC,在工作区中插入(位图),单击“导入”以添加要添加的位图. 添加后,在要添加图片的窗口中添加图片控件(Picture),右键单击属性,将其调整为位图,然后在ID列中选择刚添加的位图的ID. 但是,应注意,添加的图片通常涵盖某些控件,并且应合理布局. 7最终效果3代码实现1.将代码添加到查询系统(连接2·6),单击“编辑”后,首先在cpp文件顶部添加头文件#include“ FindDlg.h”,然后使CKuqiView :: OnButton2无效()添加{FindDlg myDlg; myDlg.DoModal(); m_pSet-> MoveFirst(); while(!M_pSet-> IsEOF()){if(m_pSet-> m_column1 == myDlg.m_strName){UpdateData(FALSE); return;} m_pSet-> MoveNext();} MessageBox(“您正在查询的播放器可能不是超级明星”rmvb用什么播放器打开,“请注意8”,MB_OK | MB_ICONWARNING);返回;} 2·插入视频播放器的“打开”按钮·(连接两个·7)打开“打开”按钮后,添加以下代码: void Show :: OnButton2(){// TODO: 在此处添加控件通知处理程序代码char szFileFilter [] =“ Mp3文件(*. Mp3)| * .mp3 |”“ Wma文件(*. wma)| * .wma |”“视频文件(*. dat)| * .dat |”“ Wave文件(*. wav)| * .wav |“” AVI文件(* .avi)| * .avi |“”电影文件(*. mov)| * .mov |“”媒体文件(*. mmm)| *. mmm |“” Mid File(*. mid; *,rmi)| * .mid; *. rmi |“” MPEG File(*. mpeg)| * .mpeg |“”所有文件(*. *)| *. * ||“; //文件类型过滤CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,szFileFilter);如果(dlg.DoModal()== IDOK){CString PathName = dlg.GetPathName(); PathName.MakeUpper(); m_ActiveMovie.SetUrl(PathName);}} 3·连接“视频显示”和“播放窗口”·连接“视频显示”“播放窗口”(连接到两个·7)进行编辑,将CKuqiView.h文件转到顶部,然后添加#include“ Show.h”并添加void CKuqiView :: OnButton1(){// TODO: 在此处添加您的控件通知处理程序代码Show s; s.DoModal();} 94系统测试功能测试: 功能测试: 在这个链接,这个程序的目的是比较好的.
最后,基本达到了预期的效果,功能相对全面. 容错测试: 在此链接中,我在编写程序时遇到了许多问题,如下所示: 1.在将Media Player用作控件后,尽管打开了许,并且那些基本按钮存在,但是这是无法调用的按键. 例如,我想插入一个按钮来实现Media Player的“播放操作”,但是我不能在CWMPPlayer4(Media Player的一个类)中调用它,并且它总是弹出“错误,C2039: '播放' : 不是“ CWMPPlayer4”的成员,但我可以在CWMPPlayer4中找到其子类CWMPControls,在此子类中有play(). 最后,我试图解决它. 由于无法在CWMPControls中调用它,因此我将play()更改为CWMPPlayer4下的成员函数,将其直接添加到类中,并在“ CWMPPlayer4.h”文件中进行播放. ()此函数为其提供了原始功能,最后删除了原始CWMPControls的原始play()函数.
尽管我知道此更改的许多源代码,但从理论上讲,以这种方式进行更改应该是正确的,最后,未检测到语法错误,但在运行时发生了错误,即新电话仍然有电话问题,因此我在这里仍然深表怀疑. 二. 无法拖动视频. 我也研究了这个项目很长时间,最后总是遇到问题. 我的目标是打开视频播放器并将视频拖到播放器窗口中,以实现自动视频播放. 我的想法是,因为我再次将视频拖到窗口中,所以在最后一次操作期间释放了鼠标,因此我添加了“ MouseUp”命令以向该消息添加消息映射,因此我尝试了A m_ActiveMovie.DragAcceptFiles(TRUE);尽管可以调用此函数,并且其含义也是接受文件,但是在添加紫红色播放后仍然遇到不调用的问题. 三. 支持的格式太少. Media Player播放格式支持的太少,这是它自身的一个缺点. 例如,以当今网络中常用的rm或rmvb形式,它无法实现播放. 当我想让此控件扩展播放格式时,我只在Open中添加了一些语句以添加播放格式. 但是,尽管可以在“打开”中以rm和rmvb的形式打开它,但仍无法播放. 所需的是另一个模块.
4. 不同的系统,不同的控件调用. 例如,现在我已经在win7系统上编写了该程序,在其中调用了Media Player,它可以正常运行. 但是,为什么学校的XP系统存在许多问题?我自己有一个解决方案,但这不正确. 在Win7系统中,Media Player是第12代,而Xp中的原始Media Player是第10代. 第12代的许都超出了第10代,但是由于第12代必然是向后兼容的,因此第12代的功能应该能够在第12代中实现,否则,不是必须的. 尽管控件是从程序外部插入的,但实际上,每次实施Media Player时,该控件仍基于Windows Media Player函数调用,因此系统更改也将影响Media Player调用. 五岁以下添加随信息而变化的图片. 最后,这仍然没有被研究. 客观原因是10,因为这涉及到诸如二进制输出之类的困难,但是它应该更加主观. 性能和效率测试: 这个程序在这方面仍然可以. 除了一些额外加载的Media Player类之外,其他语句也简洁明了. 而且整体操作相对容易. 易用性测试: 11
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/bofangqi/article-208087-1.html
数据呢
中国统一的日子也就到了
不用大陆动手
不喊话警告