• 一个自动动态播放图片的类(downmoon)新增图片效果


    第一步:创建一个类clsTurnPicture

    增加方法如下 :

    /// <summary>
            
    /// 播放图片类(downmoon)
            
    /// </summary>
            
    /// <param name="arrImgName">arrImgName</param>
            
    /// <param name="arrDesc">arrDesc</param>
            
    /// <param name="strShopName">strShopName</param>
            
    /// <param name="strBrandName">strBrandName</param>
            
    /// <param name="strResoourceCode">strResoourceCode</param>
            
    /// <param name="ScrWidth">ScrWidth</param>
            
    /// <param name="ScrHeight">ScrHeight</param>
            
    /// <param name="PicWidth">PicWidth</param>
            
    /// <param name="PicHeight">PicHeight</param>
            
    /// <param name="TextHeight">TextHeight</param>
            
    /// <param name="ToolBarHeight">ToolBarHeight</param>
            
    /// <param name="FontSize">默认为16,px</param>
            
    /// <returns></returns>

            public string getPicsForHtml(ArrayList arrImgName,ArrayList arrDesc,string strShopName,string strBrandName,string strResoourceCode,int ScrWidth,int ScrHeight,int PicWidth,int PicHeight,int TextHeight,int ToolBarHeight,int FontSize)
            

                 StringBuilder sb 
    = new StringBuilder();
                
    string strHtml="";
                
    if(arrImgName==nullreturn "" ;
                ArrayList ar1
    =new ArrayList(arrImgName);
                ArrayList ar2
    =new ArrayList(arrDesc);
                
    int len=ar1.Count;
                
    int len2=ar1.Count-1;
                
    int len3=ToolBarHeight-2;
                
    string str1="";
                
    string str2="";

                
    //strHtm+=@"   <html><head><title>Buynow{0}-{1}-{2}图片信息</title>
                strHtml=@"<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"" ><HTML><HEAD><title>"+    strShopName+"-"+strBrandName+"-"+"席位:"+strResoourceCode+   "-外观展示图"+
                    
    @"</title>
            <meta http-equiv=""content-type"" content=""text/html; charset=gb2312"">
            <meta name=""GENERATOR"" Content=""Microsoft Visual Studio .NET 7.1"">
            <meta name=""CODE_LANGUAGE"" Content=""C#"">
            <meta name=""vs_defaultClientScript"" content=""JavaScript"">
            <meta name=""vs_targetSchema"" content=""http://schemas.microsoft.com/intellisense/ie5"">  
    "+System.Environment.NewLine;

                sb.Append(strHtml);
                sb.Append(
    "<script language=JavaScript>"+" ");
                sb.Append(
    "<!-- Begin"+System.Environment.NewLine);
                sb.Append(
    "var interval = 6; // delay between rotating images (in seconds)"+System.Environment.NewLine);
                sb.Append(
    "interval *= 1000;"+System.Environment.NewLine);
                sb.Append(
    "var flagtime=0;"+System.Environment.NewLine);
                sb.Append(
    "var image_index = -1;"+System.Environment.NewLine);
                sb.Append(
    "image_list = new Array();"+System.Environment.NewLine);
                sb.Append(
    "note_list = new noteArray("+len2.ToString()+")"+System.Environment.NewLine);
                sb.Append(
    "var number_of_image = image_list.length;"+System.Environment.NewLine);
                sb.Append(
    "var timesnum=0;    "+System.Environment.NewLine);
                
    //strHtml=string.Format(strHtml,len.ToString());
                string strTemp="";
                
    for(int k=0;k<ar1.Count;k++)
                
    {
                    strTemp
    =ar1[k].ToString();
                    
    //strHtm+=" image_list[k] = new imageItem("+strTemp+")";
                    str1+=" image_list["+k.ToString()+"] = new imageItem(""+strTemp+"")"+"; ";
                }

                sb.Append(
    ""+System.Environment.NewLine);
                
    for(int k=0;k<ar2.Count;k++)
                
    {
                    strTemp
    =strShopName+"-"+strBrandName+"-"+strResoourceCode+"-"+ar2[k].ToString();
                    str2
    +=" note_list["+k.ToString()+"] = ""+strTemp+"""+"; ";
                }

                sb.Append(str1);
                sb.Append(str2);
                sb.Append(
    "function noteArray(size)"+System.Environment.NewLine);
                sb.Append(
    "{"+System.Environment.NewLine);
                sb.Append(
    "this.length=size;"+System.Environment.NewLine);
                sb.Append(
    "for(i=1;i<=size;i++)"+System.Environment.NewLine);
                sb.Append(
    "{"+System.Environment.NewLine);
                sb.Append(
    @"this[i]="""""+System.Environment.NewLine);
                sb.Append(
    "    }"+System.Environment.NewLine);
                sb.Append(
    "return this;"+System.Environment.NewLine);
                sb.Append(
    "}"+System.Environment.NewLine);
                sb.Append(
    "function counternum()"+System.Environment.NewLine);
                sb.Append(
    "{"+System.Environment.NewLine);
                sb.Append(
    "if( timesnum < "+len2.ToString()+")"+System.Environment.NewLine);
                sb.Append(
    "{"+System.Environment.NewLine);
                sb.Append(
    "    timesnum++;"+System.Environment.NewLine);
                sb.Append(
    @"//document.all.slide_ent.src=""about:blank"";");
                sb.Append(System.Environment.NewLine);
               
                sb.Append(
    @"//document.all.slide_ent.src=""about:blank"";");
                sb.Append(System.Environment.NewLine);
                sb.Append(
    "    }"+System.Environment.NewLine);
                sb.Append(
    "}"+System.Environment.NewLine);
                sb.Append(
    @"function run(obj)
                                {
                                    interval=obj.options[obj.selectedIndex].value*1000;
                                    rotateImage();
                                }
    ");
                sb.Append(
    @"function stop()
                        {
                            interval=0;
                        }
                        function previous()
                        {
                            var new_image = getPreviousImage();
                            document[""rImage""].src = new_image;
                        }
                        function next()
                            {
                                var new_image = getNextImage();
                                document[""rImage""].src = new_image;
                            }
                            function imageItem(image_location)
                            {
                                this.image_item = new Image();
                                this.image_item.src = image_location;
                            }
                            function noteItem(note)
                            {
                                this.note_item = new Image();
                                this.note_item.src = note;
                            }
                            function get_ImageItemLocation(imageObj)
                            {
                                return(imageObj.image_item.src)
                                }
                            function get_NoteItemLocation(noteObj)
                            {
                                return(noteObj.note_item.src)
                                }
                            function generate(x, y)
                            {
                                var range = y - x + 1;
                                return Math.floor(Math.random() * range) + x;
                            }
    ");
                sb.Append(
    @"function getPreviousImage()
                            {
                                image_index = image_index-1;
                                if (image_index < 0)
                                {
    ");
                sb.Append(
    "image_index=image_index+"+len.ToString()+";");
                sb.Append(
    @"}
                    var new_image = get_ImageItemLocation(image_list[image_index]);
                    document.all.span_1.innerText=image_index+1;
                    document.all.summary.innerText=note_list[image_index];
                    return(new_image);
    ");
                sb.Append(System.Environment.NewLine
    +"}");
                sb.Append(
    @"function getNextImage()
                        {
                            image_index = image_index+1;
                        
    ");
                sb.Append(
    "if (image_index >= "+len.ToString()+")");
                sb.Append(System.Environment.NewLine);           
                sb.Append(
    @"{");
                sb.Append(System.Environment.NewLine);       
                sb.Append(
    "image_index=image_index-"+len.ToString()+";");
                sb.Append(System.Environment.NewLine);       
                sb.Append(
    "}");
                sb.Append(System.Environment.NewLine);       
                
    //sb.Append(@"");
                sb.Append(@"var new_image = get_ImageItemLocation(image_list[image_index]);
                            document.all.span_1.innerText=image_index+1;
                            document.all.summary.innerText=note_list[image_index];
                            return(new_image);
    ");
                sb.Append(System.Environment.NewLine
    +"}");       
                sb.Append(
    @"
                            //新增图片效果
                            function setTransition()
                            {
                            if (document.all)
                            {
                            document.all('rImage').filters.revealTrans.Transition=Math.floor(Math.random()*23);
                            document.all('rImage').filters.revealTrans.apply();
                            }
                            }
                            function playTransition()
                            {
                            if (document.all)
                            document.all('rImage').filters.revealTrans.play();
                            }
    ");
               
               
                strHtml
    =@"
                        function rotateImage()
                        {
                            if (interval == 0)
                            {
                                return 1;
                            }
                            if (flagtime == 1)
                            {
                                var now = new Date();
                                var time1 = now.getTime();
                                var time2;
                                time1=time1+3000;
                                time2=now.getTime();
                                while(time2 < time1)
                                {
                                    now = new Date();
                                    time2=now.getTime();
                                }
                                flagtime=0;
                            }
                            var new_image = getNextImage();
                            setTransition();//新增图片效果
                            document['rImage'].src = new_image;
                            var recur_call = ""rotateImage('""+'rImage'+""')"";
                             playTransition();//新增图片效果
                            setTimeout(recur_call,interval);
                        }
                        // End -->
                        </script>
           
                        <script type=""text/javascript"" src=""Resource/Script/ygcss.js""></script>
                    
    ";
                sb.Append(strHtml);
                strHtml
    =@"</HEAD><body topmargin=""0"" leftmargin=""0""><form name=""frmDispImage"">";
                       
                sb.Append(strHtml);
                    strHtml
    =@"
                    <center>
                    <center>
                    <table bgcolor='#fff2df' border='0' cellpadding='0' cellspacing='0' width='
    "
                        
    +ScrWidth.ToString()+@"'>
                    <tbody><tr>
                    <td align='center' valign='top'><table border='0' cellpadding='0' cellspacing='0' width='100%'>
                    <tbody><tr>
                    <td height='1'></td>
                    </tr>
                    </tbody></table>
                    <table border='0' cellpadding='0' cellspacing='0' height='
    "+
                        PicHeight.ToString()
    +"' width='"+PicWidth.ToString()+@"' align='center'>
                    <tbody><tr>
                    <td align='center'><img name=""rImage"" src='
    "+
                       
                        ar1[
    0].ToString()+"' width='"+PicWidth+"' height='"+PicHeight+@"'  onload=""counternum();"" border='0' style='FILTER: revealTrans(duration=3,transition=20)'></td>
                        </tr>
                        </tbody></table>
                       
                        <!--text-->
                        <table border='0' cellpadding='0' cellspacing='0' width='100%'>
                        <tbody><tr>
                        <td id=""summary"" align='center' height='
    "+
                        TextHeight.ToString()
    +"' style='font-size:"+FontSize.ToString()+"pt;'>"
                       
                        
    +strShopName+"-"+strBrandName+"-"+strResoourceCode+"-"+ar2[0].ToString()+@"</td>
                        </tr>
                        </tbody></table>
                        <!--/text-->
                        <!--bottom-->
                        <table border='0' cellpadding='0' cellspacing='0' width='100%'>
                        <tbody><tr>
                        <td><img src='Resource/Image/TurnImage/slideshow_bg_3.gif' border='0' height='4' width='
    "+ScrWidth.ToString()+@"'></td>
                        </tr>
                        <tr>
                        <td bgcolor='#c9beeb' height='
    "+ToolBarHeight.ToString()+@"'>
                        <table border='0' cellpadding='1' cellspacing='0' width='100%'>
                        <tbody><tr>
                        <td class='sbody' align='center' height='
    "+len3.ToString()+"'><font style='font-size:"+FontSize+"pt;'><span id='span_1'>1</span>/"+len.ToString()+

                                
    @"&nbsp;&nbsp;&nbsp;&nbsp;
                                < img src='Resource/Image/TurnImage/slideshows_bottom_1.gif' alt='开始 ' onclick=""run(document.frmDispImage.select1)"" align='absmiddle' border ='0' height='21' width='35'>&nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_2.gif' alt ='停止' onclick=""stop();"" align='absmiddle' border='0' height='21' width ='35'>
                                & nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_3.gif' alt ='前一张' onclick=""previous();"" align='absmiddle' border='0' height= '21' width='35'>&nbsp;&nbsp;<img src='Resource/Image/TurnImage/slideshows_bottom_4.gif' alt ='后一张' onclick=""next();"" align='absmiddle' border='0' height= '21' width='35'>&nbsp;&nbsp;速度:
                                <select name=""select1"" onchange=""run(this)"">
                                <option value=""12"">12 sec.</option>
                                <option selected=""selected"" value=""6"">6 sec.</option>
                                <option value=""3"">3 sec.</option>
                                <option value=""9"">9 sec.</option>
                                </select></font></td>
                                </tr>

                                </tbody></table>
                                </td>
                                </tr>
                                <tr>
                                <td bgcolor='#625a68' height='1'></td>
                                </tr>
                                </tbody></table>
                                </td>
                                </tr>
                                </tbody></table>
                                <!--/--></center>
                                <script language=""javascript"">
                                    flagtime=1;
                                rotateImage();//修改为图片自动播放
                                <!--slideit()-->
                                    </script>

                                </center>
    ";
                    sb.Append(strHtml);
                sb.Append(
    "</form></body></HTML>");
                
    return sb.ToString();   


            }


    调用格式:
          
    ////                ArrayList ar1=new ArrayList();
    ////                ar1.Clear();
    ////                ar1.Add("http://downmoon-hgh/RichChartServer/Top30/frmForumDisplayImage.aspx?id=160720060328095407");
    ////                ar1.Add("http://downmoon-hgh/RichChartServer/Top30/frmForumDisplayImage.aspx?id=160420060327085709");
    ////                ar1.Add("http://downmoon-hgh/RichChartServer/Top30/frmForumDisplayImage.aspx?id=160420060327091030");
    ////                ar1.Add("http://downmoon-hgh/RichChartServer/Top30/frmForumDisplayImage.aspx?id=160420060327092445");
    ////           
    ////                drawPic(ar1);



                    
    if(this.ar1==null || ar1.Count==0  )
                    
    {
                       
    // this.MsgBox("该席位/资源无外观图!");
                       
    // this.CloseWebForm();
                        return ;
                    }

                    
    else
                    
    {

                        drawPic(ar1);
                    }



    private void drawPic(ArrayList arrImages)
            
    {
                
    if(pic==null)
                
    {
                    pic
    =new clsTurnPicture();
                }

                 
    int i;   
                ArrayList ar2
    =new ArrayList();
                ar2.Clear();
                
    for(int k=0;k<arrImages.Count;k++)
                
    {    i=k+1;
                    ar2.Add(
    "展示图"+i.ToString());
                }

            Response.Write(pic.getPicsForHtml(arrImages,ar2,CurrShopName,CurBrandName,strResourceCode,
    1024,768,1022,640,36,34,16));
               
               
            }
    邀月注:本文版权由邀月和博客园共同所有,转载请注明出处。
    助人等于自助!  3w@live.cn
  • 相关阅读:
    (转)iOS分类和扩展(Categories和Extensions)
    (转)在Android的webview中定制js的alert,confirm和prompt对话框的方法
    (转)20 个大大节省你时间的 HTML5 开发工具
    (转)UIWebView与JavaScript的那些事儿
    ios调打电话代码
    iOS打电话、发邮件、发短信、打开浏览器
    (转)常见证书格式和转换
    (转)实战p12文件转pem文件
    (转)iOS如何取得APP的版本信息跟服务器对比进行升级提示?
    添加首部元素
  • 原文地址:https://www.cnblogs.com/downmoon/p/1019458.html
Copyright © 2020-2023  润新知