说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

利用Visual Basic设计多媒体应用程序

HTML文档下载 WORD文档下载 PDF文档下载
利用Visual Basic设计多媒体应用程序
一、前言
  随着多媒体硬件环境和软件环境的不断完善,目前,大部分计算机软件开发中都涉及多
媒体软件技术的应用。
  进行多媒体应用程序设计,从原理上说,可以采用从C++到多媒体专用开发系统(如
TOOLBOOK、AUTHORWARE、DIRECTOR)等多种层次的工具。然而,由于多媒体软件涉及的媒体
复杂多样、开发周期短并且需要多种专业人员参与,因此,为了能进行实用高效的开发,必
须选用简单易用、开发效率高的软件。
  Visual Basic是Microsoft公司开发的Windows编程工具软件。由于它具有先进的设
计思想、快速易掌握的使用方法及控制媒体对象手段灵活多样等特点,受到了多媒体软件开
发人员的关注和青睐,也因此成为多媒体应用程序开发的理想工具。

二、Visual Basic的多媒体控件MCI.OCX

  MCI(媒体控制接口)是Microsoft公司为实现Windows系统下设备无关性而提供的媒
体控制接口标准。用户可以方便地使用MCI控制标准的多媒体设备。

  MCI包含在Windows多媒体扩展的MMSYSTEM模块中,用来协调事件间以及MCI设备驱
动程序间的通讯,提供了与设备无关的接口属性。通常应用程序是通过指定一个MCI设备类
型来区分MCI设备,设备类型指明了当前实际使用设备的物理类型,不同的设备类型使用不
同的控件属性来进行描述(见附表1)。

  从使用的控制方式上来说,MCI设备分为复合和简单两类。一个简单MCI设备并不需要
设备元素。例如,CD音频和音碟机就是在一个已经安装好了的硬盘上工作的,它们不需要
应用程序为其操作的媒体内容提供任何信息。但对于复合的MCI设备,就需要应用程序提供
设备元素,即一个包含全部路径名的源数据文件或目的文件。

  Visual Basic语言的Custom Control(用户控制部件)概念体现了当今软件设计的发
展潮流--面向对象技术,编程者可以在Visual Basic的工具箱(Toolbox)中嵌入各式各样
五花八门的用户控件,每个用户控制部件都有一定的属性和操作方法,编程者通过属性的设
置和方法的控制完成特定的功能。为了方便地控制多媒体,在专业版Visual Basic工具箱
中提供了一个用于多媒体目的的用户控件--MCI.OCX。

  多媒体MCI控件MCI.OCX专用于对多媒体控制接口MCI设备的多媒体数据文件实施记录
和回放,从目的效果上来说,该控件通过一组按钮来发出种种设备控制命令以实现对诸如:
音频面板、MIDI音序器、CD-ROM驱动器、音频CD播放机、录像带播放、录音带录放等设备
的控制。在Visual Basic程序设计时,当在表中加入多媒体MCI控件时(在工具箱内双击
MCI控件),则出现下列按钮群:向前(Prev)、向后(Next)、播放(Play)、暂停(Pause)、
返回(Back)、单步(Step)、停止(Stop)、记录(Record)和出带(Eject)。

  应用程序对MCI的这组按钮操作非常灵活方便,如当我们打开一个MCI设备后,就可以
根据该设备类型的属性随时从控件中选择合适的状态按钮来表示即刻设备的物理状态。所有
MCI控件可以有下列几种方式来编程:⑴控件及其各按钮的可见性和使能性;⑵可变或完全
对控件进行重新定义;⑶在一个窗口表格中可以同时控制多个设备。

三、多媒体控制部件MCI.OCX的调用
  在Visual Basic3.0专业版中,多媒体控件MCI.OCX(在Visual Basic 3.0和4.0中,
多媒体控件的扩展名为.VBX)是作为可选用部件提供的。为了使用它,首先要执行File\Add
File菜单命令,把Windows\system目录下的MCI.OCX加入到工具箱(Toolbox)中,这时
会在工具箱中出现相应的MCI.OCX图标。如果使用的是Visual Basic4.0版(或5.0版),
选择Tools\Custom Controls菜单或直接键入Ctrl+T,即可出现对话框,在Available
Controls列表框中选中Microsoft Multimedia Controls条目旁边的检查框,同样会在工
具箱中出现MCI.OCX图标。
  双击工具箱中的多媒体控件MCI.OCX图标,调用MCI.OCX控件之后,表单FORM中将出
现一排灰色的媒体控制按钮(九个)。

四、Visual Basic多媒体应用程序设计步骤
  多媒体控件MCI.OCX包含有一组高级的与设备无关的控制命令。在使用该多媒体控件
时,首先用OPEN命令打开MCI设备(多媒体设备)并建立一个与之对应的文件,以便来进行
录或放等操作(但是对诸如CDAudio、VCR和录像带不能使用相应文件)。一旦设备打开成功,
就可以向它发出各种操作命令(见附表的按钮命令)来完成指定的工作任务。最后记住,要
用Close命令来关闭设备和数据文件。
  使用MCI.OCX来进行多媒体应用程序开发是很方便的,因为大多数属性都是容易理解
的,其中Command属性尤为重要,它是在运行过程中向多媒体设备发命令。格式为:
  Form.MMcontrol.Command=cmdstring$
  其中,cmdstring$变量是如下可执行命令名:Open、Close、Play、Pause、Stop、Back、
Step、Prev、Next、Seek、Record、Eject、Sound和Save。一旦给其命令设置,它就立刻
执行,所发生的错误存在Error属性中。
  下面以播放DEMO.WAV(波形文件)文件为例,说明Visual Basic多媒体应用程序设计
步骤。
  首先,创建一个包含有多媒体控件(MCI.OCX)的表格(Form),于是屏幕上显示出形状
类似录音机的控制键,不过这时多媒体控制部件是不能马上拿来用的(各键呈灰色),须通
过程序代码来改变键的状态。
  其次,在Form_Load过程中,插入相应程序代码。如下
  Sub Form_Load()
  ‘在发出 OPEN 命令前要设置多媒体设备的属性
  Form1.MMControl1.Notify=False
  Form1.MMControl1.Wait=True
  Form1.MMControl1.Shareable=False
  Form1.MMControl1.DeviceType="WaveAudio"
  Form1.MMControl1.FileName="c:\windowss\
  mmdata\demo.wav"
  Form1.MMControl1.Command="Open"
  End Sub

  最后,运行上述程序,控制键呈黑色,这时就可以使用Play、Record等键操作数据文
件DEMO.WAV了。例如用鼠标点按Play键就能听到.WAV音效(计算机应装有发音设备)。
  通过上面陈述,不难发现,Visual Basic利用多媒体控件MCI.OCX设计多媒体应用程
序很容易掌握。

五、Visual Basic多媒体应用程序设计实例
  1、播放CD音乐
  在很多多媒体软件系统中,都提供了激光唱盘的播放软件,利用多媒体控件MCI.OCX,
我们可以轻松地编制出符合自己使用要求的简易激光唱盘播放机。
  表1给出了简易CD播放器的主要控制部件定义,其后是对应于各个触发事件的源程序
代码。
完整的源程序清单如下:
  'CD播放机实用程序
  '运行程序前请在CD-ROM驱动器中装入一张激光唱碟’“LOAD”按钮触发事件
  Private Sub Command1_Click()
  '装入CD唱片
  On Error GoTo MCI_ERROR
  MMControl1.Command = "Open"
  On Error GoTo 0
  '设置时间格式
  MMControl1.TimeFormat = vbMCIFormatTmsf
  '关闭LOAD按钮,显示图片
  Command1.Enabled = False
  Picture1.Picture = Picture3.Picture
  ' 设置初始轨道数
  Label1.Caption = "1"
  Exit Sub
  MCI_ERROR:
  DisplayErrorMessageBox
  Resume MCI_EXIT
  MCI_EXIT:
  Unload CD
  End Sub

  Private Sub Form_Load()
  MMControl1.Wait = True
  MMControl1.UpdateInterval = 0
  ' 设置设备类型
  MMControl1.DeviceType = "CDAudio"
  '设置缺省轨道数为0
  Label1.Caption = "0"
  End Sub

  Private Sub Form_Unload(Cancel As Integer)
  MCITest.Show
  End Sub

  ’“出带”按钮触发事件
  Private Sub MMControl1_EjectClick(Cancel As Integer)
  Command1.Enabled = True
  Picture1.Picture = Picture2.Picture
  MMControl1.UpdateInterval = 0
  On Error GoTo MCI_ERROR2
  MMControl1.Command = "Eject"
  MMControl1.Command = "Close"
  On Error GoTo 0
  Label1.Caption = "0"
  Label3.BackColor = &H404040
  Exit Sub
  MCI_ERROR2:
  DisplayErrorMessageBox
  Resume Next
  End Sub

  ’“向前”按钮触发事件
  Private Sub MMControl1_NextCompleted(ErrorCode As Long)
  Label1.Caption = Str$(MMControl1.Track)
  End Sub

  ’“暂停”按钮触发事件
  Private Sub MMControl1_PauseClick(Cancel As Integer)
  MMControl1.UpdateInterval = 0
  Label3.BackColor = &H404040
  End Sub

  ’“播放”按钮触发事件
  Private Sub MMControl1_PlayClick(Cancel As Integer)
  MMControl1.UpdateInterval = 1000
  Label1.Caption = Str$(MMControl1.Track)
  End Sub

  ’“向后”按钮触发事件
  Private Sub MMControl1_PrevCompleted(ErrorCode As Long)
  Label1.Caption = Str$(MMControl1.Track)
  End Sub
  
  Private Sub MMControl1_StatusUpdate()
  Label1.Caption = Str$(MMControl1.Position And &HFF)
  If MMControl1.Mode = vbMCIModePlay Then
  Label3.BackColor = &H80FF&
  Else
  Label3.BackColor = &H404040
  End If
  End Sub
 
  ’“停止”按钮触发事件
  Private Sub MMControl1_StopClick(Cancel As Integer)
  MMControl1.UpdateInterval = 0
  Label3.BackColor = &H404040
  MMControl1.To = MMControl1.Start
  MMControl1.Command = "Seek"
  MMControl1.Track = 1
  Label1.Caption = "1"
  End Sub

  2、播放AVI(音频视频接口)文件
  电影(包括声音和图像)是广大计算机工作者最为关心的媒体信息之一,电影处理技术
也是多媒体关键技术之一。而在多媒体系统中,AVI(Audio Video Interface,音频视频接
口)文件是存储电影(包括声音和图像)的标准格式,这些AVI文件一般是通过捕获实时视
频信号得来的,也可以通过扫描仪获取图像或者使用动画制作软件得到。于是,屏幕窗口上
的音频视频操作,就变成了对AVI文件(文件后缀为AVI)的处理。
在实际工作中,播放AVI文件(即影片)的方法有许多种,而其中以利用Visual Basic的
多媒体控件方法最为简单、方便。下面以一个具体实例来说明如何播放AVI文件:假设用户
当前目录下有名字为DEMO.AVI的视频音频文件,则利用Visul Basic播放该影片需要经过
如下步骤:
  (1)在Visual Basic的窗体中加入一个MMControl多媒体控件、一个PictureBox图
片框控件和两个ComandButton命令按钮部件;
  (2)设置各个控件的属性,其中窗体命名为Form1,MMControl多媒体控件命名为
MMControl1、PictureBox图片框控件命名为Picture1、两个ComandButton命令按钮控件分
别命名为Play和Close;
  (3)编写各触发事件源程序代码并且运行。源程序代码为:
  Private Sub Play_Click()
  MMControl1.Filename = "DEMO.AVI"
  MMControl1.DeviceType= = "AVIVIDEO"
  MMControl1.hWndDisplay = Picture1.hWnd
  MMControl1.Command = "OPEN"
  MMControl1.To = 1
  MMControl1.Command = "SEEK"
  MMControl1.Command = "PLAY"
  End Sub
  Private Sub Close_Click()
  MMControl1.Command = "STOP"
  MMControl1.Command = "CLOSE"
  End Sub
  值得注意的是:在播放AVI文件之前,首先应该把AVI(音频视频)驱动程序安装在Windows
下。AVI的驱动程序名为MCIAVI.DRV,必须将它拷贝到\WINDOWS\SYSTEM目录下,同时在
SYSTEM.INI文件的[MCI]部分加上:
  AVIVIDEO=MCIAVI.DRV
  这样,运行Windows时,Windows会自动地将AVI的驱动程序安装好。
  以上仅描述了利用多媒体控制部件播放音频文件(.WAV)、CD唱片和音频视频文件
(.AVI)的操作过程。实际上利用多媒体控制部件同样可以播放动画文件(.FLI、.FLC)、MIDI
文件等其他媒体信息。

六、结束语
  通过前面论述,不难看出:利用Visual Basic提供的多媒体控制部件MCI.OCX,广大
计算机用户可以方便、快捷、高效率地开发出各种多媒体应用程序。但需要强调的是:开发
设计Visual Basic多媒体应用程序,除了可以利用多媒体控制部件以外,还可以采用其他
手段,例如通过调用API函数等等(鉴于篇幅,这里未做讨论)。可见, Visual Basic确
实是专业与非专业多媒体软件开发人员共同拥有的理想开发工具。



附表1 MCI设备类型定义
设备类型   设备描述
CDAudio    激光唱盘播放设备
DAT      数字化磁带音频播放机
DigitalVideo 动态数字视频图像设备
Animation  动画播放设备
Other    未给出标准定义的MCI设备
Overlay    模拟视频图像叠加设备
Sequence    MIDI音序发生器
VCR     可以使用程序控制的磁盘录像机
VideoDisc   可以使用程序控制的激光视盘机
WaveAudio  播放数字化波形音频的设备

附表2 多媒体控制部件特有事件列表
事件       说明
Done        完成MCI命令动作(Notify为真)
ButtonClick    单击按钮
ButtonCompleted 按钮执行命令完成
ButtonGetFocus  按钮获得输入焦点
ButtonLostFocus 按钮失去输入焦点
StatusUpdate   更新媒体控制对象的状态信息
开发者眼中的代码审查“真相” 互联网产品设计的12个理念 Pair、Between、小恩爱:妹纸装个情侣应用吧? 横跨四大操作系统:3DMark将挑战所有智能设备 美国碰壁欧洲得意 华为获CERN青睐 应用数据分析新标准:Flurry增应用崩溃分析功能 Twitter被黑客入侵,25万用户信息可能被窃 16亿美元超级计算机项目助力解读人脑 卡巴斯基发现新型Android恶意软件 可入侵Windows 谷歌发布基于B-Tree的C++模板库 开源产品系列:高性能Web框架Zend Framework LiFi是否会取代WiFi? 1月浏览器排行:IE10突破1% Chrome连续3月下滑 Wine让Android也能运行Windows软件 Cory Ondrejka,是这位工程师拯救了Facebook! 三星争夺企业市场的三大痛点与对策 Xcode更新至4.6 支持iOS 6.1 工程师揭秘:NVIDIA如何锻造Android掌机 VMware掌控Puppet 老用户会被锁定吗? 试图领导创新:三星创新中心11亿美元建基金 基于WebRTC Chrome与Firefox实现视频通话 将OpenStack私有云部署到Hadoop MapReduce环境 Web设计师必备的10款最佳排版工具 诺基亚CEO谈平板计划 Android为候选系统 244亿美元!戴尔公司正式完成私有化 对抗苹果 Facebook或推Find My Friends应用 前谷歌工程团队负责人:如何打造一个完美的产品 好消息!Google Drive可存储共享JavaScript等网站 Android Rivers:用Kotlin语言写出的新闻应用 辞旧迎新 老牌游戏开发商的移动进化之路 iSuppli:硬盘市场持续萎缩 大数据应用成重要市场 我的asp.net程序运行一段时间后,就会出现不能访问sql server的情况,好象说是缓冲区已满,不知如何解决? 如何利用串口来实现SNMP协议呢? 问中国球迷: 求一段从web页面通过提交插入sqlserver的源代码, 什么软件可以修改.hlp文件呢 谁有软件工程的英文文档? 请问如何给asp写成的系统打包成安装程序,我用了sql-server,难道连sql的设置之类的东东也一起打包吗? 请教PB高手,谁可以告诉我下段程序的功能 数据窗口中某字段为date类型,我希望新增记录是能自动将当天的日期附值给它 谁有 平衡二叉树的插入算法 的C源代码? 谢了 什么软件可以修改.hlp文件 id是怎么随机生成的?这是小弟我学asp.net遇到的疑惑 一个FLASH,,看看像不像自己。。。 谁有 平衡二叉树的插入算法 的C源代码? 谢了 请问那里有ms exchange server2000正式企业版下载的?很急用,到处都找不到,请大家帮帮忙,谢谢! Win2000辅助域控制器问题。无法建立辅助域控制器。谢谢! 什么函数能对CStringArray中的字符串按字母顺序排序? 请问数据窗口更新的问题。 请教有没有判断日期格式是否正确的函数? 各位高手,有人听说过PCI-7841,帮帮忙吧,拜托了 js可以修改xml里的数据吗? 如何知道某一台电脑的IP的子网掩码??急!!! 考试通过心情爽,开心、快乐的人请来!!! 什么地方有关于这个APACHE的安装,配置的讲解呀? 请教PB高手,谁可以告诉我下段程序的功能 神啊~~救救我吧~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 谁有没有好的方法将一条记录从表1中添加到表2(Ado连接)(在线等待)???? 如何判断鼠标是否移出一个窗口(广义上的窗口),且此窗口没有句柄 对delete 操作释放内存资源有些搞不清楚? SQL SERVER 中有没有计算余数的函数? 如何用vb开发web组件,比如说上传文件组件,发email组件,思路是什么?怎么样实现? 有谁知道哪里能下载我形我速,我找的网站下不下来,帮帮忙吧! 怎么让我的opengl程序link成static的,不想总是需要dll 为什么我的DBGRID不能用???? 来者有分!我想找一个能暂停一个程序并保存下来的软件。 100分的小问题,寻SQL语句,选出最小的记录? Dialog中能不能加ToolBar? ODBC参数绑定,为什么会失败,我已经试了最起码10次了,高手给我指教一下好吗,程序是这样的,谢谢! 请教一个数据库问题,大数据量时如何处理才能使速度不至于太慢,还望赐教! 我不明白,既然微软将C#定位在网络上,而且还大力支持ASP.NET,为什么在开发时还要大量借助于JavaScript呢? 怪事情更新表也会出现这种问题的吗?? 急!急!急!怎么不能注册com组件???? 怎样生成一个空文件,然后向里面写一些record数据? 有没有什么好的办法,可以倒入倒出数据? 关于encode,请帮忙! 如何过滤掉我不想要的xml文档? hydnoahark(诺亚方舟) come in!! C#的应用程序如何部署到windows 的其他计算机上? 不好意思,数据库连接:( winapi gettcptable怎么用? 请教:怎样利用特定大小的缓冲区播放大型的WAVE格式的声音数据 交通工具的特点轮船.飞机.的. 1.某人吃花生时不小心噎到,即刻引起了一阵咳嗽反应,此反应由哪里控制?A 脊髓 B 大脑 C 小脑 D 延脑 地球上海洋面积是36000万平方千米,占地球总面积的17分之12.地球总面积是多少万平方千米?谁会!算式! 液溴用一层水封盖再密封保存 和 固体碘放在棕色细口瓶中 哪个对哪个错 为什么 是不是固体都放广口? 水银能蒸发吗? 中国历史上有什么政治家 只用一种试剂将AgNO3、KSCN、稀HCL、NaOH四种溶液分开的反应离子方程式为 8年级上册科学实验活动手册P6页答案在测定食盐的密度的实验中,如果先用天平测出烧杯和盐水的质量,再把部分食盐倒入量筒,测出体积再天平测出烧杯和剩下盐水的质量,想想,这样的操作程 敢于革新的事例 奴隶社会有地主阶级吗? 辅导书上有一句话:反射弧中任何一个环节中断,反射都不能发生.如果我们刺激传入神经或者神经中枢,效应器有么有反应,如果有,这难道不算是反射吗 力和物体在力的方向移动的距离的乘积叫做功中的距离指的是垂直距离吗? 我的理想 医生 怎么实现 第七册 科学实验活动手册第二章观察蜗牛 压力可以产生电能.但是持续不断的压力是否也可以产生电能?比如人站在那里不动,由自身的体重产生压力,能否产生电能? F和Cl形成的化合物的化学式是什么 一道有关反射的生物题下列不属于反射活动的现象是( )A.狗算算术B.因气候炎热而出汗C.眼前突然出现物体会眨眼D.草履虫趋向有利刺激,逃避有害刺激B.因气候炎热而出汗 好象也是啊.它通过了 什么材料在 压力作用下会产生电能呢?附加 打火机的工作原理? 如何加快铝拉丝油中铝粉的沉降? 水银蒸发吗 如何利用汽车在路面行驶时让路面压力产生电能 来自春秋,战国,秦,汉,三国,晋,南北朝,隋,唐,五代十国,宋,元,明,清的名人有哪些?急. 中国历史人物故事不要太多我拿来做手抄报的内容 温度计水银破了怎么清理 春秋,战国,秦,汉,三国,晋,南北朝,隋,唐,五代十国,宋,元,明,清里有哪些人? 历史人物事迹历史人物光荣事迹 温度计水银撒到包上能直接洗吗 春秋;战国;秦;汉;三国;晋;南北朝;唐;五代十国;宋;元;明;清的朝代的三个重点人物求求各位了 历史人物故事要简短的.具体的故事!不要人物简介! 历史上在黄河“身边”的英雄有那些?简述其事迹. 我的理想是医生50字小短文 铝卷拉丝是什么意思 有关历史人物的故事 关于海口高速铁路的问题...想在正月初三的时候早上去三亚 当天就回...能提前订票么?提前几天订?可不可以一次买来回的那种票?如果要提前订的话怎么订啊?还有是不是三亚回海口的票很难 为了除去KCl溶液中的含有的少量FeCl3和K2SO4杂质,应依次加入的试剂是?A.先加入适量的AgNO3溶液,再加入适量BaCl2溶液B.先加入BaCl2溶液,再加入适量AgNO3溶液C.先加入适量KOH溶液,再加入适量Ba(NO3)2 求历史人物故事,紧急!最好不要转载, 简述航空母舰的优点和缺点 在FeCl3+KSCN=Fe(SCN)Cl2+KCl的平衡体系中,(1)在溶液中加少量KSCN固体,平衡( )移动.理由( ) (2)在溶液中加少量KCl固体,平衡( ).理由是( )…… 我想了解化学趣味知识 急求与航天高铁有关的辩论赛题目 被蚊子咬 ,那么蚊子咬后,瘙痒是什么反射呢,..谢瘙痒是简单还是复杂反射 公元前221年,秦朝结束春秋战国___的局面;280年,___短期统一,结束三国鼎立的局面;589年,隋朝建者___结束南北朝分裂局面,统一了中国. 封建社会时期,西欧封建精神支柱是 O和Na的最高价氧化物对应的水化物的化学式分别为什么? 秦朝在哪三国长城的基础上建立万里长城 西欧的封建社会开始于什么时期 铝挤中,拉丝用英语如何表达 不同温度不同浓度下氯化钾的电导率多少?20,30,40摄氏度在0.02mol/l,0.05mol/l的电导率, 将下列的交通工具按发明的先后顺序排列,并说出他们的特点与优势飞机火车自行车轮船汽车 感受器-传入神经-神经中枢-传出神经-效应器为什么拿起烫馒头时先放手在感觉到烫啊应该是要先感觉到烫才能进行一系列神经传导到达效应器做出放手动作才对呀 酒与汞可以化学反应不,温度计碎了,想处理 常用交通工具的特点和优势?火车、巴士、自行车、轮船、飞机的特点和优势各有哪些? 质量与密度习题一个瓶子装满水时的总质量是160g,装满密度为1.2*10^3kg/m^3的某种液体时的总质量是176g.求这个瓶子的质量和容积. 已知地球上海洋面积约为361000000km的平方,361000000这个数用科学记数法可表示为( )A.3.61*10的6次方 B.3.61*10的7次方C.3.61*10的8次方 D.3.61*10的9次方 所有的交通工具都共有的特征是什么? 反射弧中感受器、传入神经、神经中枢、传出神经、效应器受损分别会怎么样?老师把我弄糊涂了,我们老师说只有感受器不坏就有感觉,我觉得他说的不对. 地球上海洋面积是36000万平方千米,占地球总面积的17分之12.地球总面积是多少平方千米? 这些交通工具按发明的先后顺序排一排,并说出它们的特点与优势飞机 火车 自行车 轮船 汽车 (1)反射必须要经过完整的反射弧么,如果直接刺激效应器引起的反应能称为反射么?(2)膝反射时,感受器和效应器都是伸肌么,如果是,那么为何同时屈肌又会舒张(不是应该和屈肌无关?) 地球上海洋面积是36000万平方千米,占地球总面积的17分之12.地球总面积是多少万平方千米?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘