﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-</title><link>http://www.blogjava.net/ark-cp/</link><description>——希望迎着阳光奔跑！</description><language>zh-cn</language><lastBuildDate>Mon, 06 Apr 2026 05:52:09 GMT</lastBuildDate><pubDate>Mon, 06 Apr 2026 05:52:09 GMT</pubDate><ttl>60</ttl><item><title>网页播放器的参数含义 Windows Media Player 网页播放器 参数含义</title><link>http://www.blogjava.net/ark-cp/archive/2007/01/20/95016.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Fri, 19 Jan 2007 20:28:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2007/01/20/95016.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/95016.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2007/01/20/95016.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/95016.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/95016.html</trackback:ping><description><![CDATA[(默认0为否，-1或1为是)<br />&lt;object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" id="MediaPlayer1" width="286" height="225"&gt;<br />   &lt;param name="AudioStream" value="-1"&gt;<br />   &lt;param name="AutoSize" value="-1"&gt;<br />   &lt;!--是否自动调整播放大小--&gt;<br />   &lt;param name="AutoStart" value="-1"&gt;<br />   &lt;!--是否自动播放--&gt;<br />   &lt;param name="AnimationAtStart" value="-1"&gt;<br />   &lt;param name="AllowScan" value="-1"&gt;<br />   &lt;param name="AllowChangeDisplaySize" value="-1"&gt;<br />   &lt;param name="AutoRewind" value="0"&gt;<br />   &lt;param name="Balance" value="0"&gt;<br />   &lt;!--左右声道平衡,最左-9640,最右9640--&gt;<br />   &lt;param name="BaseURL" value&gt;<br />   &lt;param name="BufferingTime" value="15"&gt;<br />   &lt;!--缓冲时间--&gt;<br />   &lt;param name="CaptioningID" value&gt;<br />   &lt;param name="ClickToPlay" value="-1"&gt;<br />   &lt;param name="CursorType" value="0"&gt;<br />   &lt;param name="CurrentPosition" value="0"&gt;<br />   &lt;!--当前播放进度 -1 表示不变,0表示开头 单位是秒,比如10表示从第10秒处开始播放,值必须是-1.0或大于等于0--&gt;<br />   &lt;param name="CurrentMarker" value="0"&gt;<br />   &lt;param name="DefaultFrame" value&gt;<br />   &lt;param name="DisplayBackColor" value="0"&gt;<br />   &lt;param name="DisplayForeColor" value="16777215"&gt;<br />   &lt;param name="DisplayMode" value="0"&gt;<br />   &lt;param name="DisplaySize" value="0"&gt;<br />   &lt;!--视频1-50%, 0-100%, 2-200%,3-全屏 其它的值作0处理,小数则采用四舍五入然后按前的处理--&gt;<br />   &lt;param name="Enabled" value="-1"&gt;<br />   &lt;param name="EnableContextMenu" value="-1"&gt;<br />   &lt;!-是否用右键弹出菜单控制--&gt;<br />   &lt;param name="EnablePositionControls" value="-1"&gt;<br />   &lt;param name="EnableFullScreenControls" value="-1"&gt;<br />   &lt;param name="EnableTracker" value="-1"&gt;<br />   &lt;!--是否允许拉动播放进度条到任意地方播放--&gt;<br />   &lt;param name="Filename" value="/blog/01.wma" valuetype="ref"&gt;<br />   &lt;!--播放的文件地址--&gt;<br />   &lt;param name="InvokeURLs" value="-1"&gt;<br />   &lt;param name="Language" value="-1"&gt;<br />   &lt;param name="Mute" value="0"&gt;<br />   &lt;!--是否静音--&gt;<br />   &lt;param name="PlayCount" value="10"&gt;<br />   &lt;!--重复播放次数,0为始终重复--&gt;<br />   &lt;param name="PreviewMode" value="-1"&gt;<br />   &lt;param name="Rate" value="1"&gt;<br />   &lt;!--播放速率控制,1为正常,允许小数--&gt;<br />   &lt;param name="SAMIStyle" value&gt;<br />   &lt;!--SAMI样式--&gt;<br />   &lt;param name="SAMILang" value&gt;<br />   &lt;!--SAMI语言--&gt;<br />   &lt;param name="SAMIFilename" value&gt;<br />   &lt;!--字幕ID--&gt;<br />   &lt;param name="SelectionStart" value="-1"&gt;<br />   &lt;param name="SelectionEnd" value="-1"&gt;<br />   &lt;param name="SendOpenStateChangeEvents" value="-1"&gt;<br />   &lt;param name="SendWarningEvents" value="-1"&gt;<br />   &lt;param name="SendErrorEvents" value="-1"&gt;<br />   &lt;param name="SendKeyboardEvents" value="0"&gt;<br />   &lt;param name="SendMouseClickEvents" value="0"&gt;<br />   &lt;param name="SendMouseMoveEvents" value="0"&gt;<br />   &lt;param name="SendPlayStateChangeEvents" value="-1"&gt;<br />   &lt;param name="ShowCaptioning" value="0"&gt;<br />   &lt;!--是否显示字幕,为一块黑色,下面会有一大块黑色,一般不显示--&gt;<br />   &lt;param name="ShowControls" value="-1"&gt;<br />   &lt;!--是否显示控制,比如播放,停止,暂停--&gt;<br />   &lt;param name="ShowAudioControls" value="-1"&gt;<br />   &lt;!--是否显示音量控制--&gt;<br />   &lt;param name="ShowDisplay" value="0"&gt;<br />   &lt;!--显示节目信息,比如版权等--&gt;<br />   &lt;param name="ShowGotoBar" value="0"&gt;<br />   &lt;!--是否启用上下文菜单--&gt;<br />   &lt;param name="ShowPositionControls" value="-1"&gt;<br />   &lt;!--是否显示往前往后及列表,如果显示一般也都是灰色不可控制--&gt;<br />   &lt;param name="ShowStatusBar" value="-1"&gt;<br />   &lt;!--当前播放信息,显示是否正在播放,及总播放时间和当前播放到的时间--&gt;<br />   &lt;param name="ShowTracker" value="-1"&gt;<br />   &lt;!--是否显示当前播放跟踪条,即当前的播放进度条--&gt;<br />   &lt;param name="TransparentAtStart" value="-1"&gt;<br />   &lt;param name="VideoBorderWidth" value="0"&gt;<br />   &lt;!--显示部的宽部,如果小于视频宽,则最小为视频宽,或者加大到指定值,并自动加大高度.此改变只改变四周的黑框大小,不改变视频大小--&gt;<br />   &lt;param name="VideoBorderColor" value="0"&gt;<br />   &lt;!--显示黑色框的颜色, 为RGB值,比如ffff00为黄色--&gt;<br />   &lt;param name="VideoBorder3D" value="0"&gt;<br />   &lt;param name="Volume" value="0"&gt;<br />   &lt;!--音量大小,负值表示是当前音量的减值,值自动会取绝对值,最大为0,最小为-9640--&gt;<br />   &lt;param name="WindowlessVideo" value="0"&gt;<br />   &lt;!--如果是0可以允许全屏,否则只能在窗口中查看--&gt;<br />&lt;/object&gt;<br /><br />上面的这个播放器是老式的那种，6.4版本！新式播放器是在MediaPlayer9.0以后出现的，也就是说只有装了9.0或9.0以上的播放器才能正常使用的。<br /><br />-------------------------------------------------------------------------------<br /><br />下面是新式播放器代码，相对以前的来说要简单很多：<br />&lt;object id="player" height="64" width="260" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"&gt;<br />   &lt;param NAME="AutoStart" VALUE="-1"&gt;<br />   &lt;!--是否自动播放--&gt;<br />   &lt;param NAME="Balance" VALUE="0"&gt;<br />   &lt;!--调整左右声道平衡,同上面旧播放器代码--&gt;<br />   &lt;param name="enabled" value="-1"&gt;<br />   &lt;!--播放器是否可人为控制--&gt;<br />   &lt;param NAME="EnableContextMenu" VALUE="-1"&gt;<br />   &lt;!--是否启用上下文菜单--&gt;<br />   &lt;param NAME="url" value="/blog/1.wma"&gt;<br />   &lt;!--播放的文件地址--&gt;<br />   &lt;param NAME="PlayCount" VALUE="1"&gt;<br />   &lt;!--播放次数控制,为整数--&gt;<br />   &lt;param name="rate" value="1"&gt;<br />   &lt;!--播放速率控制,1为正常,允许小数,1.0-2.0--&gt;<br />   &lt;param name="currentPosition" value="0"&gt;<br />   &lt;!--控件设置:当前位置--&gt;<br />   &lt;param name="currentMarker" value="0"&gt;<br />   &lt;!--控件设置:当前标记--&gt;<br />   &lt;param name="defaultFrame" value=""&gt;<br />   &lt;!--显示默认框架--&gt;<br />   &lt;param name="invokeURLs" value="0"&gt;<br />   &lt;!--脚本命令设置:是否调用URL--&gt;<br />   &lt;param name="baseURL" value=""&gt;<br />   &lt;!--脚本命令设置:被调用的URL--&gt;<br />   &lt;param name="stretchToFit" value="0"&gt;<br />   &lt;!--是否按比例伸展--&gt;<br />   &lt;param name="volume" value="50"&gt;<br />   &lt;!--默认声音大小0%-100%,50则为50%--&gt;<br />   &lt;param name="mute" value="0"&gt;<br />   &lt;!--是否静音--&gt;<br />   &lt;param name="uiMode" value="mini"&gt;<br />   &lt;!--播放器显示模式:Full显示全部;mini最简化;None不显示播放控制,只显示视频窗口;invisible全部不显示--&gt;<br />   &lt;param name="windowlessVideo" value="0"&gt;<br />   &lt;!--如果是0可以允许全屏,否则只能在窗口中查看--&gt;<br />   &lt;param name="fullScreen" value="0"&gt;<br />   &lt;!--开始播放是否自动全屏--&gt;<br />   &lt;param name="enableErrorDialogs" value="-1"&gt;<br />   &lt;!--是否启用错误提示报告--&gt;<br />   &lt;param name="SAMIStyle" value&gt;<br />   &lt;!--SAMI样式--&gt;<br />   &lt;param name="SAMILang" value&gt;<br />   &lt;!--SAMI语言--&gt;<br />   &lt;param name="SAMIFilename" value&gt;<br />   &lt;!--字幕ID--&gt;<br />&lt;/object&gt;<br /><br />Real Player 网页播放器 参数含义<br /><br />参数：autostart 属性：True或是False 作用：指定是否自动播放指定的源文件 <br />参数：backgroundcolor 属性：任何用符号“#”开头的16进制数值或是任何预定义的颜色作用：指定图像窗口的背景颜色 <br />参数：center 属性：True或是False 作用：指定片断使用初始编码大小播放，并且在图像窗口的中央。 <br />参数：classid 属性："clsid：CFCDAA03-8BE4-1lcf-B84B0020AFBBCCFA:** 作用：用于指定ActiveX控件的唯一的字符串标示，可以认出嵌入的RealPalyer播放器。 <br />参数：console 属性：任何字符串作用：可以将各种不同的RealPlayer控制聚集在网页上，这样它们可以交互使用或是保持独立，而且互相不影响 <br />参数：controls 属性：ImageWindow，All，ControlPanel，PlavButton，PlayOnlyButton， PauseButton,StopButton，FFCtrl，RWCtrl，MuteCtrl，MuteVolume，VolumeSlider， PositionSlider,TACCtrl，HomeCtrl，InfoVolumePanel，InfoPanel，StatusBar， StatusField，PositionField 作用：可以让你指定那些控制是可见的。 <br />参数：height 属性：任何整数值作用：指定RealPlayer元素的高度，单位:像素 <br />参数：id 属性：任何字符串作用：为标签中的RealPlayer元素指定名字。 <br />参数：imagestatus 属性：True或是False 作用：指定是否在图像窗口中显示状态信息，默认值是true <br />参数：loop 属性：True或是False 作用：可以让你指定片断是否无限循环 <br />参数：maintainaspect 属性：True或是False 作用：默认RealPlayer拉伸所有的片断来充满整个图像窗口。 <br />参数：name 属性：任何字符串作用：为标签中的RealPlayer元素指定名字(在标签中使用id) <br />参数：nojava 属性：True或是False 作用：避免启动Java虚拟机 <br />参数：nolabels 属性：True或是False 作用：可以禁止显示标题或是版权信息(realplayer5.0以上时，它是垃圾...) <br />参数：nologo 属性：True或是False 作用：避免RealPlayer启动时在图像窗口中显示 <br />参数：numloop 属性：任何整数值作用：让你能够指定文件片循环的次数，不需要参数loop <br />参数：prefetch 属性：True或是False 作用：指定在播放前，RealPlayer是否可以获得流描述信息，默认值是False <br />参数：region 属性：任何字符串作用：同SMIL一起使用。允许你指定使用HTML代替SMIL <br />参数：scriptcallbacks 属性：用逗号分割的列表作用：指定浏览器的回调监控（好高级的东东！） <br />参数：shuffle 属性：True或是False 作用：同多文件片的ram文件或是SMIL文件一起使用。可以让RealPlayer随机播放列表中的文件 <br />参数：src 属性：任何合法的相对或是完整的URL 作用：指定播放的文件或是源文件的地址 <br />参数：type 属性：字符串作用：为嵌入插件指定MIME类型 <br />参数：width 属性：任何整数值作用：指定RealPlayer元素的宽度<br /><br />RealPlayer的一些函数、方法和过程<br /><br />这是 Real Player ActiveX Control Library (Version 1.0) 的所有函数与方法，有兴趣可以研究一下。<br /><br />function GetSource: WideString;<br />procedure SetSource(const lpszNewValue: WideString);<br />function GetConsole: WideString;<br />procedure SetConsole(const lpszNewValue: WideString);<br />function GetControls: WideString;<br />procedure SetControls(const lpszNewValue: WideString);<br />function GetNoLabels: WordBool;<br />procedure SetNoLabels(bNewValue: WordBool);<br />function GetAutoStart: WordBool;<br />procedure SetAutoStart(bNewValue: WordBool);<br />function GetAutoGotoURL: WordBool;<br />procedure SetAutoGotoURL(bNewValue: WordBool);<br />function GetVolume: Smallint;<br />procedure SetVolume(nVol: Smallint);<br />function GetMute: WordBool;<br />procedure SetMute(bMute: WordBool);<br />function GetLoop: WordBool;<br />procedure SetLoop(bVal: WordBool);<br />function GetImageStatus: WordBool;<br />procedure SetImageStatus(bEnable: WordBool);<br />function GetPacketsTotal: Integer;<br />function GetPacketsReceived: Integer;<br />function GetPacketsOutOfOrder: Integer;<br />function GetPacketsMissing: Integer;<br />function GetPacketsEarly: Integer;<br />function GetPacketsLate: Integer;<br />function GetBandwidthAverage: Integer;<br />function GetBandwidthCurrent: Integer;<br />procedure DoPlayPause;<br />procedure DoStop;<br />procedure DoNextItem;<br />procedure DoPrevItem;<br />function CanPlayPause: WordBool;<br />function CanStop: WordBool;<br />function HasNextItem: WordBool;<br />function HasPrevItem: WordBool;<br />function HasNextEntry: WordBool;<br />function HasPrevEntry: WordBool;<br />procedure DoNextEntry;<br />procedure DoPrevEntry;<br />procedure AboutBox;<br />procedure EditPreferences;<br />procedure HideShowStatistics;<br />function IsStatisticsVisible: WordBool;<br />procedure DoGotoURL(const url: WideString; const target: WideString);<br />procedure DoPlay;<br />procedure DoPause;<br />function GetPosition: Integer;<br />function GetPlayState: Integer;<br />function GetLength: Integer;<br />function GetTitle: WideString;<br />function GetAuthor: WideString;<br />function GetCopyright: WideString;<br />function GetClipWidth: Integer;<br />function GetClipHeight: Integer;<br />function CanPlay: WordBool;<br />function CanPause: WordBool;<br />procedure SetPosition(lPosition: Integer);<br />function GetNumLoop: Integer;<br />procedure SetNumLoop(lVal: Integer);<br />function GetCenter: WordBool;<br />procedure SetCenter(bVal: WordBool);<br />function GetNoLogo: WordBool;<br />procedure SetNoLogo(bVal: WordBool);<br />function GetMaintainAspect: WordBool;<br />procedure SetMaintainAspect(bVal: WordBool);<br />function GetBackgroundColor: WideString;<br />procedure SetBackgroundColor(const pVal: WideString);<br />function GetStereoState: WordBool;<br />function GetLiveState: WordBool;<br />function GetShowStatistics: WordBool;<br />procedure SetShowStatistics(bVal: WordBool);<br />function GetShowPreferences: WordBool;<br />procedure SetShowPreferences(bVal: WordBool);<br />function GetShowAbout: WordBool;<br />procedure SetShowAbout(bVal: WordBool);<br />function GetOriginalSize: WordBool;<br />procedure SetOriginalSize;<br />function GetDoubleSize: WordBool;<br />procedure SetDoubleSize;<br />function GetFullScreen: WordBool;<br />procedure SetFullScreen;<br />function GetEnableContextMenu: WordBool;<br />procedure SetEnableContextMenu(bVal: WordBool);<br />function GetEnableOriginalSize: WordBool;<br />procedure SetEnableOriginalSize(bVal: WordBool);<br />function GetEnableDoubleSize: WordBool;<br />procedure SetEnableDoubleSize(bVal: WordBool);<br />function GetEnableFullScreen: WordBool;<br />procedure SetEnableFullScreen(bVal: WordBool);<br />function GetEnableMessageBox: WordBool;<br />procedure SetEnableMessageBox(bVal: WordBool);<br />procedure SetTitle(const pVal: WideString);<br />procedure SetAuthor(const pVal: WideString);<br />procedure SetCopyright(const pVal: WideString);<br />function GetWantKeyboardEvents: WordBool;<br />procedure SetWantKeyboardEvents(bWantsEvents: WordBool);<br />function GetWantMouseEvents: WordBool;<br />procedure SetWantMouseEvents(bWantsEvents: WordBool);<br />function GetNumEntries: Smallint;<br />function GetCurrentEntry: Smallint;<br />function GetEntryTitle(uEntryIndex: Smallint): WideString;<br />function GetEntryAuthor(uEntryIndex: Smallint): WideString;<br />function GetEntryCopyright(uEntryIndex: Smallint): WideString;<br />function GetEntryAbstract(uEntryIndex: Smallint): WideString;<br />procedure SetCanSeek(bCanSeek: WordBool);<br />function GetCanSeek: WordBool;<br />function GetBufferingTimeElapsed: Integer;<br />function GetBufferingTimeRemaining: Integer;<br />function GetConnectionBandwidth: Integer;<br />function GetPreferedLanguageString: WideString;<br />function GetPreferedLanguageID: Integer;<br />function GetUserCountryID: Integer;<br />function GetNumSources: Smallint;<br />function GetSourceTransport(nSourceNum: Smallint): WideString;<br />function GetWantErrors: WordBool;<br />procedure SetWantErrors(bVal: WordBool);<br />function GetShuffle: WordBool;<br />procedure SetShuffle(bVal: WordBool);<br />function GetVersionInfo: WideString;<br />function GetLastMessage: WideString;<br />function GetLastErrorSeverity: Integer;<br />function GetLastErrorRMACode: Integer;<br />function GetLastErrorUserCode: Integer;<br />function GetLastErrorUserString: WideString;<br />function GetLastErrorMoreInfoURL: WideString;<br />procedure SetPreFetch(bVal: WordBool);<br />function GetPreFetch: WordBool;<br />procedure SetRegion(const pVal: WideString);<br />function GetRegion: WideString;<br />function GetIsPlus: WordBool;<br />function GetConsoleEvents: WordBool;<br />procedure SetConsoleEvents(bVal: WordBool);<br />function GetDRMInfo(const pVal: WideString): WideString;<br />property ControlInterface: IRealAudio read GetControlInterface;<br />property DefaultInterface: IRealAudio read GetControlInterface;<br /><br />网页中WMP视频控制之使用指南 <br /><br />□播放方法和属性 <br />除播放、暂停、停止外，媒体播放器还可用下面的属性： <br />扫描(Scanning)——与录像机的快进快倒功能类似； <br />搜索(Seeking)——直接移到剪辑中标记的特定上演时间； <br /><br />□播放 <br />媒体播放器提供了两种技术来指定要播放的媒体名称(剪辑)，你可以设置 FileName 属性，或调用 Open 方法。 如果 AutoStart 属性的值是 true 的话，当 FileName 属性被设置成该电影剪辑的 URL 后，该电影剪辑将开始播放；否则电影剪辑不会开始播放，除非你调用 Play 方法。 Open 方法开始播放是异步的，它不象 Play 方法要等到其他的进程结束后才开始播放。 <br />媒体播放器提供了下面的类似录像机的属性和方法来控制流媒体的播放： <br />Play、Stop、Pause 方法，来开始、停止、暂停流媒体。 <br />PlayCount 属性，设置文件播放的次数。 <br />AutoRewind 属性，确定当停止播放时是否返回到电影剪辑的开始部分。 <br /><br />□音频控制 <br />媒体播放器提供了下面的属性来管理音频： <br />Balance 属性，确定左右音箱的声音平衡； <br />Volume 属性，用来加大或降低音量； <br />Mute 属性，用来关闭或打开声音； <br />※你可以将 ShowAudioControls 属性设为 true 来在控制栏添加处理声音的控件。 <br /><br />□扫描 <br />媒体播放器提供了下面的属性用以扫描： <br />FastForward 方法，快进； <br />FastReverse 方法，快倒； <br />Rate属性，改变播放速率； <br />※要想使电影剪辑能被扫描，必须将 CanScan 和 AllowScan 属性设为 true。 <br /><br />□搜索 <br />用于搜索的属性有： <br />MarkerCount 属性，指剪辑中标记的总数量； <br />CurrentMaker、GetMarkerName、GetMarkerTime 方法，用于返回标记信息； <br />MarkerHit 事件，当遇到标记时触发； <br />CurrentPosition 属性，当前位置(用秒度量)，可用来将播放头移到剪辑中指定的点； <br />PositionChange 事件，当设置 CurrentPosition 属性时触发； <br />※要想搜索到任意的时间，必须将 CanSeek 属性设为 true，要想搜索到标记点，必须将 CanSeekToMarkers 属性设为 true。 <br /><br />□媒体播放器的外观界面 <br />在网页中，你可以通过相关属性来控制媒体播放器的哪些部分出现，哪些部分不出现。 <br />媒体播放器包括如下元素： <br />Video Display Panel：视频显示面板； <br />Video Border：视频边框； <br />Closed Captioning Display Panel；字幕显示面板； <br />Track Bar；搜索栏； <br />Control Bar with Audio and Position Controls：带有声音和位置控制的控制栏； <br />Go To Bar：转到栏； <br />Display Panel：显示面板； <br />Status Bar：状态栏； <br />下面的属性用来决定显示哪一个元素： <br />ShowControls 属性：是否显示控制栏（包括播放控件及可选的声音和位置控件）； <br />ShowAudioControls 属性：是否在控制栏显示声音控件（静音按钮和音量滑块）； <br />ShowPositionControls 属性：是否在控制栏显示位置控件（包括向后跳进、快退、快进、向前跳进、预览播放列表中的每个剪辑）； <br />ShowTracker 属性：是否显示搜索栏； <br />ShowDisplay 属性：是否显示显示面板（用来提供节目与剪辑的信息）； <br />ShowCaptioning 属性：是否显示字幕显示面板； <br />ShowGotoBar 属性：是否显示转到栏； <br />ShowStatusBar 属性：是否显示状态栏； <br /><br />□播放列表 <br />媒体播放器提供下面的方法来访问播放列表中的剪辑： <br />Next 方法，跳到节目（播放列表）中的下一个剪辑； <br />Previous 方法，跳回到节目中的上一个剪辑； <br />媒体播放器的一个特性是能够预览节目中的每一个剪辑，使用如下属性： <br />PreviewMode 属性，决定媒体播放器当前是否处于预览模式； <br />CanPreview 属性，决定媒体播放器能否处于预览模式； <br />在windows 媒体元文件中，可以为每一个剪辑指定预览时间——PREVIEWDURATION,如果没有指定，那么默认的预览时间是10秒钟。 <br />你也可以用Windows 媒体元文件来添加 watermarks 与 banners，元文件也支持插入广告时的无间隙流切换。 <br /><br />□节目信息 <br />使用 GetMediaInfoString 方法可以返回相关剪辑或节目的如下信息： <br />文件名：File name <br />标题：Title <br />描述：Description <br />作者：Author <br />版权：Copyright <br />级别：Rating <br />URLs：logo icon、watermark、banner的地址 <br />剪辑信息可以放在媒体文件中，也可以放在Windows 媒体元文件中，或者两者都放。如果在元文件中指定了剪辑信息，那么用 GetMediaInfoString 方法返回的就是元文件中的信息，而不会返回剪辑中包含的信息。 <br />在元文件中，附加信息可以放置在每一个剪辑或节目的 PARAM标签中。你可以为每个剪辑添加任意多个 PARAM 标签，用来存储自定义的信息或链接到相关站点。在 PARAM 标签中的信息可以通过 GetMediaParameter 方法来访问。 <br />下面的属性返回有关大小和时间的信息： <br />ImageSourceHeight、ImageSourceWidth：返回图像窗口的显示尺寸； <br />Duration 属性，返回剪辑的长度(秒)， 要检测这个属性是否包含有效的数值，请检查IsDurationValid 属性。(对于广播的视频，其长度是不可预知的)。 <br /><br />□字幕 <br />你可以用 .smi 文件来为你的节目添加字幕。媒体播放器支持下面的属性来处理字幕： <br />SAMIFileName 属性，指定 .smi 文件的名字； <br />SAMILang 属性，指定字幕的语言(如果没有指定则使用第一种语言)； <br />SAMIStyle 属性，指定字幕的文字大小和样式； <br />ShowCaptioning 属性，决定是否显示字幕显示面板； <br /><br />□脚本命令 <br />伴随音频、视频流，你可以在流媒体文件中加入脚本命令。脚本命令是多媒体流中与特定时间同步的多对Unicode串。第一个串标识待发命令的类型，第二个串指定要执行的命令。 <br />当流播放到与脚本相关的时间时，控件会向网页发送一个 ScriptCommand事件，然后由事件处理进程来响应这个事件。脚本命令字符串会作为脚本命令事件的参数传递给事件处理器。 <br />媒体播放器会自动处理下面类型的内嵌脚本命令： <br />1)URL型命令：当媒体播放器控件收到一个URL型的命令时，指定的URL会被装载到用户的默认浏览器。如果媒体播放器嵌在一个分帧的HTML文件中， URL页可以装载到由脚本命令指定的帧内。如果脚本命令没有指定一个帧，将由 DefaultFrame 属性决定将 URL 页装入哪一帧。 <br />你可以通过设置 InvokeURLs 属性来决定是否自动处理 URL 型的脚本命令。如果这个属性的值为 false ，媒体播放器控件将忽视 URL型命令。但是脚本命令事件仍会触发，这就允许你有选择地处理 URL 型命令。 <br />URL 型命令指定的是 URL 的相对地址。基地址是由 BaseURL属性指定的。媒体播放器控件传送的脚本命令事件的命令参数是链接好的地址。 <br />2)FILENAME型命令：当媒体播放器控件收到一个FILENAME型的命令时，它将 FileName属性设置为脚本命令提供的文件，之后媒体播放器会打开这个文件开始播放。 媒体播放器控件总是自动处理 FILENAME 型命令，不象 URL 型命令，它们不能被禁止。 <br />3)TEXT型命令：当媒体播放器控件收到一个 TEXT型的命令时，它会将命令的内容显示在控件的字幕窗口。内容可以是纯文本的，也可以是 HTML。 <br />4)EVENT型命令：当媒体播放器控件收到一个 EVENT型的命令时，它会在媒体元文件中搜索 EVENT 元素的 NAME 属性。如果 NAME 属性与脚本命令中的第二个字符串匹配，媒体播放器控件就执行包含在 EVENT 元素中的条目。 <br />5)OPENEVENT型命令：当媒体播放器控件收到一个 OPENEVENT型的命令时，它会在媒体元文件中检查 EVENT 元素，并打开匹配的标题，但不播放，直到收到来自 EVENT型命令的同名真实事件。 <br /><br />□捕捉键盘和鼠标事件 <br />EnableContextMenu 与 ClickToPlay 属性为用户提供了在图像窗口进行操作的方法。 <br />如果 EnableContextMenu 属性为 true ，在图像窗口右击鼠标可以打开关联菜单，如果将ClickToPlay 属性设为 true ，用户可以单击图像窗口进行播放与暂停的切换。 <br />要接收鼠标移动和单击事件，请将 SendMouseMoveEvents 和 SendMouseClickEvents 属性设为 true 。鼠标事件有： <br />MouseDown，当用户按下鼠标时产生； <br />MouseUp，当用户释放鼠标时产生； <br />MouseMove，当用户移动鼠标时产生； <br />Click，当用户在媒体播放器上单击鼠标按钮时产生； <br />DbClick，当用户在媒体播放器上双击鼠标按钮时产生； <br />要接收键盘事件，请将 SendKeyboardEvents 属性设为 true 。键盘事件有： <br />KeyDown，当用户按下一个键时产生； <br />KeyUp，当用户释放一个键时产生； <br />KeyPress，当用户按下并释放一个键时产生； <br /><br />□监测流状态与网络链接 <br />流状态属性包括： <br />PlayState：播放状态； <br />OpenState：打开状态； <br />Bandwidth：带宽； <br />支持的事件有： <br />OpenStateChange：打开状态改变(仅当SendOpenStateChangeEvents属性为true时触发) <br />PlayStateChange：播放状态改变(仅当SendPlayStateChangeEvents属性为true时触发) <br />EndOfStream：流结束时触发； <br />NewStream：打开新流时触发； <br />网络接收属性包括： <br />ReceptionQuality：接收质量； <br />ReceivedPackets：已经收到的包； <br />LostPackets：丢失的包； <br />监测缓冲的属性有： <br />BufferingTime：缓冲时间； <br />BufferingCount：缓冲次数； <br />BufferingProgress：缓冲进程； <br />Buffering：缓冲事件； <br /><br />□错误处理 <br />媒体播放器提供了内建的错误处理功能——在对话框或状态栏显示错误信息。 另外，你可以自己添加错误处理程序。如果 SendErrorEvents 属性设置为 true，将不会显示错误框，而是发送错误事件；如果 SendErrorEvents 属性设置为 false，将显示错误框，而是发送错误事件。 <br />媒体播放器支持下面的错误处理事件： <br />Error 事件，指有危险性错误发生； <br />Warning 事件，指发生了非危险性的错误； <br />当你的应用程序接收到一个错误事件，你可以检测下面的属性来确定具体的错误信息： <br />HasError：检测目前的媒体播放器是否有错误； <br />ErrorCode：提供与该类型错误相关的代码值； <br />ErrorDescription：提供错误的描述信息； <br />ErrorCorrection：指定媒体播放器对该类型的错误进行校正； <br /><br />□播放CD <br />媒体播放器将 CD 看作（在每个音轨的开头具有标记的）单一音频流。 要在网页中使用CD，你需要将 FileName 属性设为 CDAUDI，必须带有冒号，如下所示： <br />&lt;HTML&gt; <br />&lt;HEAD&gt;&lt;TITLE&gt;CD Audio Playback Example&lt;/TITLE&gt;&lt;/HEAD&gt; <br />&lt;BODY&gt; <br />&lt;OBJECT ID="MediaPlayer" <br />CLASSID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" <br />WIDTH="320" <br />HEIGHT="508" <br />STYLE="position:absolute; left:0px; top:70px;" &gt; <br />&lt;PARAM NAME="FileName" VALUE="cdaudi"&gt; <br />&lt;PARAM NAME="AutoStart" VALUE="0"&gt; <br />&lt;PARAM NAME="ShowControls" VALUE="1"&gt; <br />&lt;PARAM NAME="ShowStatusBar" VALUE="1"&gt; <br />&lt;PARAM NAME="ShowDisplay" VALUE="1"&gt; <br />&lt;/OBJECT&gt; <br />&lt;/BODY&gt; <br />&lt;/HTML&gt; <br />之后你可以用 Play 方法播放 CD 了。 <br />你可以在 windows 媒体元文件中指定播放顺序以及每个音轨的信息。示例如下： <br /><br />&lt;ASX VERSION="3.0"&gt; <br />&lt;TITLE&gt;CD Audio with the Media Player&lt;/TITLE&gt; <br />&lt;AUTHOR&gt;Windows Media Technologies&lt;/AUTHOR&gt; <br />&lt;COPYRIGHT&gt;(c) 1999, Microsoft, Inc.&lt;/COPYRIGHT&gt; <br /><br />&lt;ENTRY&gt; <br />&lt;TITLE&gt;Track 1: Title 1&lt;/TITLE&gt; <br />&lt;REF href="/blog/cdaudi" /&gt; <br />&lt;STARTMARKER NUMBER="1"/&gt; <br />&lt;ENDMARKER NUMBER="2"/&gt; <br />&lt;/ENTRY&gt; <br /><br />&lt;ENTRY&gt; <br />&lt;TITLE&gt;Track 2: Title 2&lt;/TITLE&gt; <br />&lt;REF href="/blog/cdaudi" /&gt; <br />&lt;STARTMARKER NUMBER="2"/&gt; <br />&lt;ENDMARKER NUMBER="3"/&gt; <br />&lt;/ENTRY&gt; <br /><br />&lt;ENTRY&gt; <br />&lt;TITLE&gt;Track 3: Title 3&lt;/TITLE&gt; <br />&lt;REF href="/blog/cdaudi" /&gt; <br />&lt;STARTMARKER NUMBER="3"/&gt; <br />&lt;ENDMARKER NUMBER="4"/&gt; <br />&lt;/ENTRY&gt; <br /><br />&lt;ENTRY&gt; <br />&lt;TITLE&gt;Track 4: Title 4&lt;/TITLE&gt; <br />&lt;REF href="/blog/cdaudi" /&gt; <br />&lt;STARTMARKER NUMBER="4"/&gt; <br />&lt;/ENTRY&gt; <br />&lt;/ASX&gt; <br /><br /><br /><br />1. 如何贴rm,ra,ram类型的音乐，代码如下： <br />&lt;embed width="0" height="0" type="audio/x-pn-realaudio-plugin" autostart="true" controls="ControlPanel" src="http://guest.anyp.cn/uploads/01.rm";&gt; <br /><br />　　2. 如何贴midi,asf,wma,asx类型的音乐，代码如下： <br />&lt;embed autostart="true" loop="-1" controls="ControlPanel" width="0" height="0" src="http://guest.anyp.cn/uploads/01.mid";&gt; <br /><br />3.&lt;bgsound src="你的歌曲地址" loop="-1"&gt; <br /><br />　　只需要把整段代码copy到文章中去(编辑文章的时请用HTML代码模式，否则这段代码会以文本形式显示出来，不能被执行)，用你喜欢的音乐文件的 URL代替上面的音乐地址代码就可以了。注意，音乐如果太大影响浏览速度，严重的可能导致浏览器停止响应，所以如果要放背景音乐请不要使用大文件。 <br /><br />音乐文件的URL指：音乐文件的网址。 <br />取得网址的方法是，把鼠标移到有链接的音乐名点击右键-&gt;复制快捷方式，然后把需要加入音乐文件的URL地方按CTRL+C(把之前复制的地址粘贴出来)。 <br /><br />加了背景音乐后不能正常收听音乐这种情况的错误有两个： <br />1、音乐地址错误，误把html结尾的网址当成是音乐的地址。 <br />2、音乐文件太大，需要很长时间才能播放。 <br /><br /><br />&lt;embed height=26 src=http://song.5music.org/5musicreall/2003_ydzh/emhj/1-14.rm type=audio/x-pn-realaudio-plugin width=120 controls="StatusField" autostart="true" <br />加音乐的代码。此代码为加入RM格式的音乐。建议使用此代码，速度比较快。 <br />&lt;bgsound src='???' loop=true&gt;此代码为加入MIDI格式的音乐，速度在所有音乐中，是最快的。建议最先考虑用此代码/用时，将问号部分换成音乐地址。TRUE可以换成阿拉伯数字。用来控制音乐播放的次数。 <br />&lt;embed src=?? width=240 hight=180&gt;此代码为插入FLASH画面。数字部分可调节画面大小 <br />&lt;script language="JavaScript" src="http://danlovesary.y365.com/music/music.js"&gt;&lt;/script&gt; <br /><br /><font color="red">windowsmediaplayer 控件的常用属性及方法 </font><br /><br />   windowsmediaplayer 控件在我们编程时经常要用到，但是有很多属性及方法却不知道该怎么使用。现以 wmp 9.0控件为例说说其在 Delphi 7.0 中常用的属性与方法（JavaScript中用法几乎完全相同）。<br /><br />   假设此控件名为wmp<br /><br />属性/方法名： 说明： <br />[基本属性] 　 <br />URL:String; 指定媒体位置，本机或网络地址 <br />uiMode:String; 播放器界面模式，可为Full, Mini, None, Invisible <br />playState:integer; 播放状态，1=停止，2=暂停，3=播放，6=正在缓冲，9=正在连接，10=准备就绪 <br />enableContextMenu:Boolean; 启用/禁用右键菜单 <br />fullScreen:boolean; 是否全屏显示 <br />[controls] wmp.controls //播放器基本控制 <br />controls.play; 播放 <br />controls.pause; 暂停 <br />controls.stop; 停止 <br />controls.currentPosition:double; 当前进度 <br />controls.currentPositionString:string; 当前进度，字符串格式。如“00:23” <br />controls.fastForward; 快进 <br />controls.fastReverse; 快退 <br />controls.next; 下一曲 <br />controls.previous; 上一曲 <br />[settings] wmp.settings //播放器基本设置 <br />settings.volume:integer; 音量，0-100 <br />settings.autoStart:Boolean; 是否自动播放 <br />settings.mute:Boolean; 是否静音 <br />settings.playCount:integer; 播放次数 <br />[currentMedia] wmp.currentMedia //当前媒体属性 <br />currentMedia.duration:double; 媒体总长度 <br />currentMedia.durationString:string; 媒体总长度，字符串格式。如“03:24” <br />currentMedia.getItemInfo(const string); 获取当前媒体信息"Title"=媒体标题，"Author"=艺术家，"Copyright"=版权信息，"Description"=媒体内容描述， "Duration"=持续时间（秒），"FileSize"=文件大小，"FileType"=文件类型，"sourceURL"=原始地址 <br />currentMedia.setItemInfo(const string); 通过属性名设置媒体信息 <br />currentMedia.name:string; 同 currentMedia.getItemInfo("Title") <br />[currentPlaylist] wmp.currentPlaylist //当前播放列表属性 <br />currentPlaylist.count:integer; 当前播放列表所包含媒体数 <br />currentPlaylist.Item[integer]; 获取或设置指定项目媒体信息，其子属性同wmp.currentMedia <br /><br />   常用的差不多就这么多，全部资料请参见Windows Media Player 9 SDK 文档。<br /><br />转自:http://bbs.52115.com.cn/thread-404-1-1.html,呵呵上网查资料的时候被我发现，对不住啦，小小copy了，便于以后学习：）<img src ="http://www.blogjava.net/ark-cp/aggbug/95016.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2007-01-20 04:28 <a href="http://www.blogjava.net/ark-cp/archive/2007/01/20/95016.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>DAO+DAOIMPL+SERVICE+SERVICEIMPL+ACTION--PAGE</title><link>http://www.blogjava.net/ark-cp/archive/2006/12/27/90344.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Wed, 27 Dec 2006 09:11:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/12/27/90344.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/90344.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/12/27/90344.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/90344.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/90344.html</trackback:ping><description><![CDATA[这两天的工作情况，初来乍到看到一种实现：<br />DAO+DAOIMPL+SERVICE+SERVICEIMPL+ACTION<br />DAO是一个接口，接着用DAOIMPL将其实现。。<br />SERVICE也是一个接口，接着用SERVICEIMPL将其实现。。<br />ok..什么意思呢，DAO和SERVICE都是接口，一个接口对应着相应的实现类，然后用ACTION去实现SERVICE里的方法，就这样了... ...<br />天啊编程太虐了吧！！<img src ="http://www.blogjava.net/ark-cp/aggbug/90344.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-12-27 17:11 <a href="http://www.blogjava.net/ark-cp/archive/2006/12/27/90344.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于JDK5.0以后版本环境变量的设置</title><link>http://www.blogjava.net/ark-cp/archive/2006/12/01/84797.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Fri, 01 Dec 2006 04:04:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/12/01/84797.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/84797.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/12/01/84797.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/84797.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/84797.html</trackback:ping><description><![CDATA[
		<p>
				<font face="Verdana">不常用总是忘，所以记下来：）<br />添加：<br /><font color="#ff0000">JAVA_HOME</font> 变量值设置为JDK的安装路径（eg:<font color="#3399ff"><strong>E:\Java\jdk1.6.0</strong></font>）<br /><font color="#ff0000">path</font>变量值设置为JDK安装路径+bin目录（eg:<font color="#3399ff"><strong>E:%JAVA_HOME%\bin</strong></font>）<br /><font color="#ff0000">classpath</font>变量值设置为<strong>.</strong>+<strong>;</strong>+JDK安装路径+lib目录+tools.jar(和dt.jar)（eg:<font color="#3399ff"><strong>.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar</strong></font>）<br />*当JAVA_HOME设置好了后JDK的安装路径就可以用<font color="#3399ff"><strong>%JAVA_HOME%</strong></font>代替<img height="19" src="http://www.blogjava.net/Emoticons/Pizza.gif" width="19" border="0" /></font>
		</p>
<img src ="http://www.blogjava.net/ark-cp/aggbug/84797.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-12-01 12:04 <a href="http://www.blogjava.net/ark-cp/archive/2006/12/01/84797.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MySQL免安装版配置</title><link>http://www.blogjava.net/ark-cp/archive/2006/11/22/82738.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Wed, 22 Nov 2006 05:01:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/11/22/82738.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/82738.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/11/22/82738.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/82738.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/82738.html</trackback:ping><description><![CDATA[1、打开文件my-huge.ini另存为my.ini，在my.ini文件中加入如下配置，再放到C:/windows下<br /><font color="#009900">[mysqld]</font><br />basedir=E:/share/mysql<br />#bind-address=127.0.0.1<br />datadir=E:/share/mysql/data<br />#language=D:/usr/local/mysql/share/your language directory<br />#slow query log#=<br />#tmpdir#=<br />#port=3306<br />#set-variable=key_buffer=16M<br /><font color="#009900">[WinMySQLadmin]<br /></font>Server=E:/share/mysql/bin/mysqld-nt.exe<br />user=root<br />password=mysql<br /><font color="#ff0000">*路径根据个人的情况修正。<br /><font color="#000000">2、开始--运行中输入：E:/share/mysql/bin/mysqld-nt.exe -install 即可启动MySQL服务而且是自启，如果没有重启电脑看有没有。<br />3、设置MySQL中文字符集（MySQL正常显示中文）</font><br /><span id="ctl02_ctl00_lblEntry"><div><font color="#000000">1).配置服务器端，修改my.ini文件，使用中文字符集存储记录，同时用中文排序比较方式。<br /><font color="#009900">[mysqld]<br /></font># set character set<br />default-character-set=gbk<br /># set character collation<br />default-collation=gbk_chinese_ci</font></div><div><font color="#000000">2). 如果要在中文环境的服务器端使用mysql命令行，改变my.ini文件中mysql的默认字符集。<br /><font color="#008000">[mysql]</font><br /># set character set<br />default-character-set=gbk</font></div><div><font color="#000000">3). 在客户端程序中，设置中文字符集。以Delphi + ADO + MyODBC为例：<br />procedure InitConn;<br />var<br />  nRows: Integer;<br />begin<br />  。。。<br />  //改变当前MySQL连接session的字符集<br />  ADOConnection1.Execute('set character_set_client=''gbk''', nRows);<br />  ADOConnection1.Execute('set character_set_connection=''gbk''', nRows);<br />  ADOConnection1.Execute('set character_set_results=''gbk''', nRows);<br />  。。。</font></div></span></font><img src ="http://www.blogjava.net/ark-cp/aggbug/82738.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-11-22 13:01 <a href="http://www.blogjava.net/ark-cp/archive/2006/11/22/82738.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java程序的执行顺序</title><link>http://www.blogjava.net/ark-cp/archive/2006/09/12/69164.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Tue, 12 Sep 2006 07:17:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/09/12/69164.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/69164.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/09/12/69164.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/69164.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/69164.html</trackback:ping><description><![CDATA[
		<p>有这样的一段程序：<br />class Person {<br /> int age = 0;</p>
		<p> public Person() {<br />  System.out.println("2、然后执行了super");<br /> }</p>
		<p> public void fun() {<br />  System.out.println("super.age=" + age);<br /> }<br />}</p>
		<p>public class Test4 extends Person {<br /> static {<br />  System.out.println("1、先执行了static区域");<br /> }</p>
		<p> int age = 10;</p>
		<p> public Test4() {<br />  super.fun();<br />  System.out.println("3、然后执行了this() age=" + age);<br /> }</p>
		<p> public Test4(int age) {<br />  this();<br />  System.out.println("4、然后执行了this(int age) 年龄是：" + age);<br /> }</p>
		<p> public static void main(String[] args) {<br />  Test4 test = new Test4(20);<br /> }<br />}<br />运行的结果如下：<br />1、先执行了static区域<br />2、然后执行了super<br />super.age=0<br />3、然后执行了this() age=10<br />4、然后执行了this(int age) 年龄是：20<br />      有以上程序的运行结果我们不难发现java程序的执行步骤:对于static域的成员或static变量或static函数来说在JVM装载类的时候就已经为这些变量分配了实际的空间。在完成这些工作后，程序再去寻找函数main()的入口，执行main()中的代码块。<br />       在这里顺便说一下栈空间和堆空间的区别：个人认为程序运行时它会申请一片空间，那么在程序中定义的变量在程序运行时都会占用这片空间中的一块，而堆空间是通过new关键字所产生的对象等所占用的空间。在该程序中，当使用new Test4(20)时程序便会首先执行该类中非静态变量的默认初始化，即在该程序中设a的初值为0；完成后然后看看构造函数中有没有传递形参过来，若有则先完成对其的赋值，即绑定构造方法的参数；然后检查构造函数中有没有this()或super()等形式的代码，若有则优先执行，于是在该程序中执行代码this()；再跳转到另一个构造函数，这个构造函数执行与第一个构造函数一样的过程，于是先自动调用父类的构造函数执行其中的代码，然后再去对在类中定义的变量完成显示的初始化。一切工作完成后便会接着执行构造后数中那些真正属于它的代码段。</p>
<img src ="http://www.blogjava.net/ark-cp/aggbug/69164.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-09-12 15:17 <a href="http://www.blogjava.net/ark-cp/archive/2006/09/12/69164.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Thinking in Java 看书笔记9.6</title><link>http://www.blogjava.net/ark-cp/archive/2006/09/06/68075.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Wed, 06 Sep 2006 09:27:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/09/06/68075.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/68075.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/09/06/68075.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/68075.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/68075.html</trackback:ping><description><![CDATA[1、继承设计方面有一条通用准则，那就是把数据都设成private 的，把方法都设成public 的。<br />2、Java 提供了一个表示当前类所继承的那个“超类(superclass)”的super 关键词。例如，super.scrub( )就会调用基类的scrub( )方法。<img src ="http://www.blogjava.net/ark-cp/aggbug/68075.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-09-06 17:27 <a href="http://www.blogjava.net/ark-cp/archive/2006/09/06/68075.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>10th Day</title><link>http://www.blogjava.net/ark-cp/archive/2006/06/22/54538.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Thu, 22 Jun 2006 09:45:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/06/22/54538.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/54538.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/06/22/54538.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/54538.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/54538.html</trackback:ping><description><![CDATA[
		<p>这周看完两本书：<br />《webwork指南》、《xml指南》收获不小^_^</p>
<img src ="http://www.blogjava.net/ark-cp/aggbug/54538.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-06-22 17:45 <a href="http://www.blogjava.net/ark-cp/archive/2006/06/22/54538.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>什么是XML数据岛? </title><link>http://www.blogjava.net/ark-cp/archive/2006/06/22/54504.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Thu, 22 Jun 2006 07:44:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/06/22/54504.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/54504.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/06/22/54504.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/54504.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/54504.html</trackback:ping><description><![CDATA[数据岛是指存在于HTML页面中的XML代码。数据岛允许你在HTML页面中集成XML，对XML编 <br />写脚本，而不需要通过脚本或&lt;OBJECT&gt;标签读取XML。几乎所有能够存在于一个结构完整 <br />的XML文档中的东西都能存在于一个数据岛中。包括处理指示、DOCTYPE声明和内部子集 <br />。（注意，编码串不能放在数据岛中。) <br />&lt;XML&gt;元素标记数据岛的开始，它的ID属性提供了一个可以用来引用数据岛的名称。 <br />数据岛的XML可以是内嵌的： <br />&lt;XML ID="XMLID"&gt; <br />   &lt;customer&gt; <br />      &lt;name&gt;Herbert Hanley&lt;/name&gt; <br />      &lt;custID&gt;81422&lt;/custID&gt; <br />   &lt;/customer&gt; <br /><br />&lt;/XML&gt; <br />或者在XML标签中通过SRC属性引用： <br />&lt;XML ID="XMLID" SRC="customer.xml"&gt;&lt;/XML&gt; <br />也可以使用&lt;SCRIPT&gt;标签来创建一个数据岛： <br /> &lt;SCRIPT LANGUAGE="xml" ID="XMLID"&gt; <br />  &lt;customer&gt; <br />    &lt;name&gt;Mark Hanson&lt;/name&gt; <br />    &lt;custID&gt;81422&lt;/custID&gt; <br />  &lt;/customer&gt; <br />&lt;/SCRIPT&gt;<br />转自：xiawenblog^_^<img src ="http://www.blogjava.net/ark-cp/aggbug/54504.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-06-22 15:44 <a href="http://www.blogjava.net/ark-cp/archive/2006/06/22/54504.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>上班的第五天</title><link>http://www.blogjava.net/ark-cp/archive/2006/06/15/53071.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Thu, 15 Jun 2006 10:56:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/06/15/53071.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/53071.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/06/15/53071.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/53071.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/53071.html</trackback:ping><description><![CDATA[今天认识了一个人才哈哈，他叫杨林，给我们介绍了webwork工作原理。之后他给我们他曾做过的“莱阳广播电视网”工程，其实就是Jsp+Java+webwork+html+xml。<br />快下班的时候突然想到一个问题，拿到这个页面我要学习的不仅仅是一些功能怎么用，同时我也应该了解这个工程可以给用户提供的功能以及工作流程，慢慢的我好像可以体会Jimmy告诉我的业务流程。<br />在后来我看了看iBATIS SQL MAP好难理解...吴文甫告诉我可以先做做“登陆”就可以熟悉这个框架了，底层还是用Java，页面随意。真是谢谢他了，下午的时候还麻烦他调那个莫名其妙的数据库...都弄好了~<br />那两个联大的学生和我同届，可他们很聪明~<br /><img src ="http://www.blogjava.net/ark-cp/aggbug/53071.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-06-15 18:56 <a href="http://www.blogjava.net/ark-cp/archive/2006/06/15/53071.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL MAP初步探讨</title><link>http://www.blogjava.net/ark-cp/archive/2006/06/12/52253.html</link><dc:creator>Ark</dc:creator><author>Ark</author><pubDate>Mon, 12 Jun 2006 09:36:00 GMT</pubDate><guid>http://www.blogjava.net/ark-cp/archive/2006/06/12/52253.html</guid><wfw:comment>http://www.blogjava.net/ark-cp/comments/52253.html</wfw:comment><comments>http://www.blogjava.net/ark-cp/archive/2006/06/12/52253.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ark-cp/comments/commentRss/52253.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ark-cp/services/trackbacks/52253.html</trackback:ping><description><![CDATA[1、SQL Map的概念：<br />SQL Map API让开发人员可以轻易地将Java Bean映射成PreparedStatement的输入参数和ResultSet结果集。开发SQL Map的想法很简单：提供一个简洁的架构，能够用20％的代码实现80％JDBC的功能。<br />2、SQL MAP如何工作？<br />SQL Map提供了一个简洁的框架，使用简单的XML描述文件将Java Bean，Map实现和基本数据类型的包装类（String，Integer等）映射成JDBC的PreparedStatement。<br />3、安装SQL Maps：只要把相关的JAR文件复制到类路径下即可。<br /><img src ="http://www.blogjava.net/ark-cp/aggbug/52253.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ark-cp/" target="_blank">Ark</a> 2006-06-12 17:36 <a href="http://www.blogjava.net/ark-cp/archive/2006/06/12/52253.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>