开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 2086|回复: 1
收起左侧

[图文资料] 简单的MP3播放器

[复制链接]
发表于 2017-2-9 10:50:41 | 显示全部楼层 |阅读模式   河北省沧州市
第一节:简单的MP3播放器 [上一节 下一节]
    小引:大家不要觉得MP3播放器是很复杂的东东,也不要以为编程是很神秘的事情,其实都是“毛毛雨啦——”。我教大家编的第一个程序就是一个简单的MP3播放器,以此来证明编程的简单、易语言的强大。例程下载
    做这个程序,大约需如下几步:1、启动易语言,新建一个程序; 2、设计程序界面; 3、写代码;4、运行编好的程序;5、生成可执行文件。这也是编写一个易语言程序的通用步骤,其中第2、3步可能重复交叉多次,这是后话。
    [注:这个例程是非常简单的。。。]
第1步:启动易语言,新建一个程序 [上一步 下一步]
    这一步应该是最简单的。从“我的电脑”或“资源管理器”中切换到易语言所在目录,双击易语言的图标 [img=32,32][/img] 即可启动易语言。
    易语言启动之后,会自动弹出一个“新建”对话框,如下图所示:
[img=459,396][/img]
    关于这个对话框,说明如下几点:
1、直接点击“确定”或选中“程序”图标后点击“确定”,将新建一个空的易语言程序;
2、选中“易模块”图标后点击“确定”,将新建一个易模块(以后讲);
3、点击“取消”则直接关闭本对话框;
4、切换到“打开例程”子夹,可选择打开易语言附带的源程序。
5、还可以切换到另一子夹填写用户反馈信息。

    在上图所示的对话框中,我们选择“取消”,即不通过该对话框新建程序。我们的目的是要演示怎样手动新建一个程序——也是很简单的:选择菜单 “文件->新建” 或 单击工具栏上的“新建”按钮[img=18,18][/img] 仍然会弹出上图所示的“新建”对话框,直接点击“确定”就完成了“新建一个程序”的任务。
[img=371,46][/img]    [注:工具栏上的“新建”按钮位于第一排最左边。易语言工具栏如右图所示:]
    至此,第1步“启动易语言,新建一个程序”就完成了。让我们回顾一下:双击易语言图标启动易语言;通过菜单或工具栏调出“新建”对话框;单击“确定”新建程序。看,多简单呀!这跟在Delphi, C++Builder, VB, VC, WPS, Word, PhotoShop, DreamWeaver, FrantPage,记事本...中新建一个文件没什么两样!——有什么两样吗?你告诉我。
    新建一个程序的结果是:在易语言主窗口中央出现了一个“周围有小方框、内部有小黑点的”空窗口,这就是第一章所提到的“窗体设计区”。下一步我们要在“窗体设计区”中设计我们自己的程序界面。
    [提示:现在就单击工具栏上的“运行”按钮[img=18,18][/img](位于第一排倒数第二个),运行一下本程序,看看效果如何?运行的结果是弹出一个窗口。不要太过于惊奇,虽然我们还没有做过什么,但它确确实实是一个完整的程序了!(欣赏完之后,单击右上角的[img=16,14][/img]结束程序,重新回到易语言开发环境,继续下面的工作。)]
    [注:运行程序还有两种方法:选择菜单“运行->运行”、按热键 F5 。]

第2步:设计程序界面 [上一步 下一步]
[img=63,55][/img]    本步的任务是:在设计窗体上“画”一个按钮,并做适当调整。请按以下步骤进行:
    移动鼠标到易语言主窗口右侧的工具箱中,单击“按钮”控件[img=25,25][/img]。
      [注:“按钮”位于工具箱二排四列。当鼠标指向控件时,会有黄色小框提示其名称:
    移动鼠标到主窗口中央的窗体设计区(这时鼠标指针变为[img=24,24][/img]),单击一下设计窗体,窗体上在鼠标单击位置就会出现了一个默认大小(80*32象素)的按钮,同时鼠标指针恢复为[img=24,24][/img]。
      [注:也可以在设计窗体上按下鼠标左键并向右下拖动(扯动一个虚框),然后释放鼠标左键。这样能画出指定大小的按钮(大小与虚框相同)。所谓“拖动”,就是在保持鼠标左键被按下的状态下,移动鼠标指针。][img=178,126][/img]
      [注:刚画出来的“按钮”周围会有八个蓝色小方框(襄有白边),鼠标移动到它们上面时,指针形状会改变。随意点击按钮以外的区域,会发现八个蓝色小方框从按钮周围消失,而出现在设计窗体周围;再点击一下按钮,八个蓝色小方框又从设计窗体周围消失,出现在按钮周围。(提示:周围有八个蓝色小方框表示该控件“被选定”,是当前控件。所有的操作都是针对当前控件的,任何操作之前都需指定操作对象——指定的方法就是单击一下该控件,使其周围出现八个蓝色小方框。判断某控件是否为当前控件的方法也很简单,就看它周围有没有八个蓝色小方框。另外,利用这八个蓝色小方框还可以调整控件的大小,下面要讲到。)]
    在按钮上任意位置按下鼠标左键(不要松开),向任意方向拖动,待松开鼠标左键时,会发现按钮的位置被移动了![img=178,126][/img][注:所谓“拖动”,就是在保持鼠标左键被按下的状态下,移动鼠标指针。]
    移动鼠标到按钮右下角的蓝色小方框上,待鼠标指针变为[img=24,24][/img]时按下鼠标左键,并向左上或右下拖动。拖动的结果是按钮的大小被改变了!
      [注:待鼠标变形后按下鼠标左键,拖动结束后再放开。]
      [注:拖动八个蓝色小方框,都可以达到改变按钮大小的目的。但有一些不同:角上的四个,可同时改变按钮的宽和高;而边上的四个,却只能改变按钮的宽或高。]
      [注:用类似的方法,同样可以调节其它控件的大小。]
    您可能早已发现了,刚才“画”的按钮上写着两个字:“按钮”。能不能改成别的什么字呢?当然是可以的!下面请看修改控件属性的操作方法。[img=197,404][/img]
    现在把目光移向易语言主窗口左侧的工作夹,用鼠标点击其右下角的“属性”切换到属性子夹(如果属性子夹已经在前台,则自然不必切换)。具体如左图所示:
    先看一下属性子夹的总体结构,可分为三部分:最上面一行(是个下拉列表)是一部分,指明当前被选择的控件;最下面一行(也是个下拉列表)是一部分,以后会提到;最重要的是两者之间的部分——
    中间这一部分根据底色的不同,又被分为两栏:左栏以灰底黑字列出了当前被选择控件所有的属性名称,右栏白底黑字是对应属性的值。要改动某个属性的值,只需在右栏原值处双击鼠标左键
    并不是所有的属性都必须由我们指定,相反,大多数属性都有缺省值,需要我们修改的,只是其中的少数几个。下面 Liigo 给大家介绍“按钮”控件的重要属性。
    ·名称标题  这是最最重要的两个属性。名称指明了按钮的名子,写代码时要用到的。[注:易语言会自己为控件命名,如我们刚才画的按钮被命名为“按钮1”,如果再画几个按钮,则依次被命名为“按钮2”“按钮3”……] 标题指明了显示在按钮上的文字。例如我们可以把按钮1的标题由“按钮”改成“播放MP3”。[img=120,48][/img]
    ·可视禁止字体 [img=64,24][/img] 可视控制按钮是否显示在窗口上(能否被看见);禁止控制按钮是否变灰;字体指定了标题文字的字体。效果见右图:
[img=170,118][/img]    ·左边顶边宽度高度  四者配合确定了按钮的位置和大小。我们前面通过拖动来调整按钮的位置和大小的时候,其实是隐含地设置这几个属性的值。一般情况下,不必直接改动这几个属性——在窗体设计区用鼠标拖动更来的简单快捷。但若要精确控制控件的位置和大小的时候,直接改动这四个值就更方便了。(毕竟用鼠标拖动是有些误差的,不是吗?)左边顶边宽度高度四个属性的具体含义见右图:(此图花了我两个多小时,妈妈的,PhotoShop牛刀宰鸡,就是耍不开! Liigo,2002/4/20)
    [注:以上属性一概不动也是可以的,但最好把标题改过来,这样使用您程序的人一看标题就知道按钮的作用了。至于没提到的属性,有机会自己尝试着改一下,不明白的时候,用鼠标点一下属性名称,然后看状态夹提示子夹(状态夹位于易语言主窗口下边,提示夹是它的三个子夹之一),里面会有解释的。]
    好了,先不管自己接受了多少,目前重中之重是确保正确地把按钮的标题改为“播放MP3”。我再重复一遍修改按钮标题的操作方法:1.选中按钮 2.切换到工作夹的属性子夹 3.找到左栏的“标题”,并双击右栏空白处 4.将原来的“按钮”两个字删除,写上“播放MP3”,打回车后发现按钮上的文字已经是“播放MP3”了。[注:标题是显示在按钮上的文字。“选中”的目的指定操作对象,选中的方法是单击窗体设计区中的欲操作控件,选中的结果(或标志)是控件周围出现八个蓝色小方框。]
    经过前面五小步,终于完成了程序界面的设计。怎么样,还满意吧?再运行一次看看效果吧。[不记得如何运行程序了?前面已经说过好几遍了。不过没关系,我再给大家说一遍。要运行正在编写的程序,至少有三种方法:㈠ 选择菜单“运行->运行”;㈡ 单击工具栏按钮[img=18,18][/img];㈢ 按热键F5 。这三种方法是等效的。]
    [注:本程序运行的结果是:弹出一个窗口,窗口上有个按钮,按钮的标题是“播放MP3”。]
    [注:赶快存盘吧[img=18,18][/img],这可是我们的劳动成果啊!不妨把文件名定为“MP3播放器”。]
    [注:到现在为止,我们还没写一行代码,所作的只不过是点了几下鼠标和输了几个汉字而已。很简单,不是吗?有朋友可能着急地问:单击按钮怎么没有播放MP3呢?哈哈,我们不是还没写一行代码嘛!只要写一行代码(没错,是一行),立刻就能播放MP3!不信您看着——]

第3步:写代码 [上一步 下一步]
    本步的任务就是要在易语言的代码编辑区输入这样一行代码:
        播放MP3(1,“d:\e.mp3”)
    这行代码的功能是播放指定的MP3文件“d:\e.mp3”。需要解释的可能是上述代码中括号内逗号之前的数字“1”,其含义是播放1遍。(如果是“2”呢?播放2遍。如果是“3”呢?播放3遍……“0”呢?当然是不播放了!要想循环播放,改为“-1”就是了。)当然,一切的前提都是指定的MP3文件必须存在。
    考虑到代码是程序的灵魂,而在易语言中输入代码的方式与平常打字大不相同,我会非常详细地介绍具体的操作方法。大家只要耐心地读下去,并亲自照着去做,一定很快就能学会!说话的功夫,心急的朋友可能尝试着自己输入代码了,可是——没找到代码编辑区!哈哈,代码编辑区我们第一章也介绍过的,还是看我的吧——
    双击设计窗体上的按钮,即可进入代码编辑区,界面如下图所示:
[img=529,351][/img]
    窗口中央深绿色区域就是易语言的代码编辑区,所有的代码都要在这里输入。
    图中比较醒目的闪烁的黄色虚框,这是易语言特有的光标[其它编辑器(如记事本)的光标多是闪烁的竖线。]图中光标所在的行有个“◇”符号,这表示该行是空行。
    易语言中的代码编辑区被分为多个“窗口程序集”(简单的程序只有一个程序集,如本程序)。程序集都有一个名称,如果不专门为其命名,则被自动顺序命名为“窗口程序集1”“窗口程序集2”……等。所谓程序集,顾名思义也就是“程序的集合”,它是由多个子程序(或者说是函数)组成的。例如“_按钮1_被单击”就是“窗口程序集1”中的一个子程序。子程序中的代码,就写在子程序名称(函数名)所在表格的下方(具体到上图,子程序“_按钮1_被单击”的代码,要从光标所在行依次向下写起)。
    我们现在不忙着写代码,先按上箭头键将光标上移一行,即移到“_按钮1_被单击”处(用鼠标单击也可将光标移过去)。然后看状态夹(位于易语言主窗口下边)的提示子夹,里面有提示:“当单击按钮后即产生此事件。本子程序为事件处理子程序,请不要修改此子程序的名称、返回值及参数定义,否则将导致对应事件不能传递到此事件处理子程序。”意思是:一旦“按钮1”被单击,就立刻自动执行子程序“_按钮1_被单击”中的代码。按照我们的设想,在按钮1被单击的时候,要播放一首MP3,所以实现播放功能的代码只要放在该子程序中就可以了。[为什么按钮被单击的时候,会自动执行特定子程序(函数)中的代码?这涉及到Windows编程中一个很重要的概念:事件驱动有兴趣的请看这里,否则跳过。]
    [注:如果提示子夹不在前台,可用鼠标点击切换,或者直接按F1键也可以。我在第一章说过请随时关注提示夹,还记得吗?这里随时都有您想知道的提示,不要吝啬您的眼光。]
    [注:“_按钮1_被单击”中的“按钮1”是什么?就是我们先前“画”到窗口中的那个按钮呀!易语言把它的名称自动命名为“按钮1”。您可能说“不是已经改为‘播放MP3’了吗?” 错误!概念混淆!我们只是把标题属性改为“播放MP3”,却没有改名称属性!名称给写程序的人用的,用于唯一标识控件;而标题(按钮上的文字)是给使用程序的人看的(想一想如果窗口上有五六个按钮,并且标题(按钮上的文字)都是“按钮”,你的用户会不会头晕?)。]
    费话了那么多,现在开始实际的代码输入!
    ①把光标重新定位到“_按钮1_被单击”所在表格的下面一行(如前图所示),按一下键盘上的空格键。这时代码编辑区起了变化,如右图。看到了吗?原来光标所在处出现一个浅灰色区域,在这里面就可以直接输入代码了!
      [注:键盘上的上下箭头键、鼠标单击都能起到移动光标的作用。]
      [注:我们已经知道要输入的代码了:播放MP3(1,“d:\e.mp3”),怎么,要一个汉字一个汉字的打进去吗?当然是可以的,但是还有更简单的方法——]
    在前图所示的灰色区域输入:bfMP3(1,"d:\e.mp3"),按回车键,易语言会自动将它转换为我们实际想要的代码:
    播放MP3(1,“d:\e.mp3”)
效果如图所示:
      [注:聪明的您已经发现,代码中有汉字的地方,输入时只要键入其汉语拼音的声母就行了!(本行代码只有两个汉字,节省的时间不够明显,但以后您会惊奇地发现,以这种方法输入,效率非常之高——比直接输入英文快多了。这是汉语的好处,也是易语言充分发挥汉语优势,为国内用户贴心考虑的结果。)]
[img=331,155][/img]
[img=329,80][/img]
[img=339,81][/img]
      [注:不会出现“重码”吗?会,但是极少!因为易语言中的系统库函数是有限的,就好比总词组数比较少,重码率自然就低,绝不会像拼音输入法那样有大量的重码。以我个人的使用经验来看,平均每输入一千行,也不见得出现一次“重码”。当然这个数字是不精确的。][img=415,365][/img]
     [一定要注意的是:以此种方法输入时,原本是字母的地方要大写(比如上面的“播放MP3”中的“MP”,如果在输入时写为“mp”,易语言就会弹出一个对话框告诉您那是错误的)。还有一点需要注意的是,引号中的文本(如上面的“d:\e.mp3”),即使里面有汉字,也不能以首拼法输入——因为它不属于易语言的内部词组,系统不能识别。详细情况,请参考《易语言知识库》中的“程序的输入方法”:在易语言主窗口中选择菜单“帮助->易语言知识库”,或在易语言目录中双击e.chm文件,均可调出易语言知识库,如图:]
      [注:Liigo建议,如果有机会,一定要通读一遍《易语言知识库》。虽然有很多初学易的朋友抱怨它晦涩难懂,并且没有图片,但它毕竟提供了用易语言编程最全面最权威的资料。在《易语言零起点》出现之前,《易语言知识库》几乎是学习易语言的唯一途径。现在有了《易语言零起点》这个最最初级的入门教程,入门是容易多了,但要想更深入的了解掌握易语言,《易语言知识库》必不可少。其实,《易语言知识库》也是非常通俗的,大家觉得它“晦涩难懂”,只不过是因为大家初学编程、许多概念都很陌生的缘故。]

    到此为止,代码输入就彻底完成了!很简单嘛,不过就是—— 1.双击按钮进入代码编辑器;2.在“_按钮1_被单击”表格下面的空行处按空格键(空行的标志是“◇”);3.输入“bfMP3(1,"d:\e.mp3")”后打回车。就这么几步。
    下一步就要运行我们的大作了!在运行程序之前,请先存盘。存盘的方法至少有三种:㈠选择菜单“程序->保存”;㈡单击工具栏上的保存按钮[img=18,18][/img](位于工具栏左边数第三个);㈢按热键Ctrl+S 。三种方法是等效的,您只要选择其中之一即可。[注:随时存盘是一个好的习惯,易语言并不强制要求必须存盘。]

第4步:运行编好的程序 [上一步 下一步]
    还记得怎样运行程序吗?要运行正在编写的程序,至少有三种方法:㈠ 选择菜单“运行->运行”;㈡ 单击工具栏按钮[img=18,18][/img];㈢ 按热键F5 。程序运行之后,其界面如图所示:[img=178,126][/img]
    是不是发现,运行时的界面与设计时的界面非常的相似?这就是所谓的“可视化编程”,所见即所得(WYSIWYG - What you see is what you get)。很酷吧?
    现在用鼠标单击窗口中央的按钮“播放MP3”,听听是否音乐响起?可别忘了打开音箱哟^_^(如果您没有音箱,可别怪我!——没有音箱就不能学易语言了吗?当然不是!)
    [注:如果确实听不到音乐,很有可能是输入代码的时候,您把MP3的路径弄错了。请检查一遍,重新运行再试一次。]

第5步:生成可执行文件 [上一步 下一步]
[img=238,361][/img]    前面的所有操作,都不是为了最后这一步么?如果不能生成EXE文件,那编程还有什么意义?!
    在易语言中,生成EXE文件是再容易不过了!
    请看菜单“程序”(如右图):只要选择菜单项
        B.编译独立发布版本 F7     或
        D.编译非独立发布版本
就可以将本程序编译为可执行文件(*.exe)。
    二者的区别是:
    1。前者生成的是独立发布版,后者生成的是非独立发布版;(废话!)
    2。独立发布版可在任何机器上独立运行,无需任何文件支持;而非独立发布版则只能运行于安装有易语言的机器上(如果非独立发布版要在未安装易语言的机器上运行,必须有易语言支持库的支持)
    3。独立发布版的文件尺寸相应地比非独立发布版大500K左右。
    大家可根据需要选择要生成的可执行文件的版本。如果自己用,或易友之间交流,编译为非独立发布版就可以了(文件比较小);如果给亲朋网友使用,而又不确信他(她)已安装易语言,则编译为独立发布版比较保险(可确保程序能够运行)。`
    [注:易语言支持库,就是文件krnln.fne,在易语言安装目录下。]

结束语:——第一节 简单的MP3播放器
(一)    这一节中,我带领大家完成了一个简单的MP3播放器。在详细介绍各步操作的过程中,还顺便附带着讲解了许多所涉及到的相关知识。为了帮助大家对易语言编程有一个总体的把握,下面我再概括总结一下本程序的编写过程:
          ·启动易语言(双击易语言图标)
          ·新建一个程序(菜单“程序->新建” 或工具栏按钮[img=18,18][/img])
          ·从工具箱中拖动一个“按钮”控件到窗体设计区
          ·在工作夹属性子夹中修改按钮的标题属性
          ·双击按钮,进入代码编辑区
          ·在代码编辑区按空格键,以“首拼法”输入代码,并打回车
          ·运行编好的程序(菜单“运行->运行” 或工具栏按钮[img=18,18][/img]  或热键F5)
          ·生成可执行程序EXE文件(菜单“程序->编译独立发布版本 或编译非独立发布版本”)
(二)    在本节所有操作中,共生成了两个文件:
              播放MP3.e      ——易语言源程序,可再次用易语言打开并编辑它
              播放MP3.exe    ——最后的可执行程序,可随时运行
其中,播放MP3.e文件大小是1.5K,播放MP3.exe文件大小是44K(非独立发布版本)或552K(独立发布版本)。独立版与非独立版的区别是:非独立版只能在安装有易语言的机器上运行,而独立版则可以在任何机器上运行(当然是在Windows操作系统下);独立版的可执行文件相应地比非独立版大500K左右。
(三)    聪明的您可能已经发现本程序的缺陷了:只能播放同一首MP3,而不能在程序运行中由用户选择想听的MP3。下一节我们将升级这个MP3播放器,以解决其缺陷。


结帖率:91% (30/33)
发表于 2017-2-9 12:24:32 | 显示全部楼层   广东省广州市
复制的还是手打的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表