一个图片轮换显示程序[源创]
2006-04-19 11:55
375 查看
做成了一个用户控件(五秒钟切换一次):
slide_ad.ascx
前台部分:
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="slide_ad.ascx.cs" Inherits="eudown_news.usercontrols.slide_ad" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
<div class="slide_ad"><a id="ad_link"><img id="ad_img" border="0"> </a>
<div><input onclick="change_ad(0);" type="button" value=" 1 "> <input onclick="change_ad(1);" type="button" value=" 2 ">
<input onclick="change_ad(2);" type="button" value=" 3 ">
</div>
</div>
<script language="javascript">
var imgs=new Array(); //图片数据
var links=new Array(); //链接数据
var count=0; //当前位置
//读取后台传到hidden对象中的数据
var t_img="<%=get_imgs%>";
var t_link="<%=get_links%>";
function get_data()
{
if (t_img!=null && t_img!=null)
{
var tmp;
tmp=t_img;
imgs=tmp.split(",");
tmp=t_link;
links=tmp.split(",");
show_ad();
}
else
{
return;
}
}
//开始显示数据
function show_ad()
{
Form1.ad_img.src=imgs[count];
ad_link.href=links[count];
count=count+1;
if (count==3)
{
count=0;
}
window.setTimeout("show_ad()",5000);
}
//手动更新广告
function change_ad(c)
{
if (c>=0 && c<=3)
{
Form1.ad_img.src=imgs[ c];
ad_link.href=links[ c];
count=c
}
}
get_data();
</script>
后台部分:
slide_ad.ascx.cs
namespace eudown_news.usercontrols
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
/// <summary>
/// slide_ad 的摘要说明。
/// 轮循广告(5秒钟切换一次)
/// </summary>
public class slide_ad : System.Web.UI.UserControl
{
protected string get_imgs;
protected string get_links;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
// get_imgs="images/31.gif,images/32.gif,images/33.gif";
// get_links="http://www.zz.ha.cn,http://www.sina.com.cn,http://www.eudown.com";
get_data();
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器
/// 修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//读取频道的编号
private int _class_id=0;
public int class_id
{
set
{
_class_id=value;
}
get
{
return(_class_id);
}
}
//显示内容的文件
private string _show_file="show_news_content.aspx";
public string show_file
{
set
{
_show_file=value;
}
get
{
return(_show_file);
}
}
//读取数据(前三条)
private void get_data()
{
System.Text.StringBuilder strsql=new System.Text.StringBuilder();
strsql.Append("select top 3 news_id,news_pic,news_title,news_changedate from news_tb ");
strsql.Append(" where news_class="+class_id +" order by news_changedate desc");
DataTable dt=new DataTable();
functions fs=new functions();
dt=fs.get_dataset(strsql.ToString()).Tables[0];
if (dt.Rows.Count>0)
{
for (int i=0;i<dt.Rows.Count;i++)
{
get_imgs+=dt.Rows[ i]["news_pic"].ToString()+",";
get_links+=this.show_file+"?id="+dt.Rows[ i]["news_id"].ToString()+",";
}
if (get_imgs.Length>0)
{
get_imgs=get_imgs.Substring(0,get_imgs.Length-1);
}
if (get_links.Length>0)
{
get_links=get_links.Substring(0,get_links.Length-1);
}
}
dt.Dispose();
}
}
}
slide_ad.ascx
前台部分:
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="slide_ad.ascx.cs" Inherits="eudown_news.usercontrols.slide_ad" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
<div class="slide_ad"><a id="ad_link"><img id="ad_img" border="0"> </a>
<div><input onclick="change_ad(0);" type="button" value=" 1 "> <input onclick="change_ad(1);" type="button" value=" 2 ">
<input onclick="change_ad(2);" type="button" value=" 3 ">
</div>
</div>
<script language="javascript">
var imgs=new Array(); //图片数据
var links=new Array(); //链接数据
var count=0; //当前位置
//读取后台传到hidden对象中的数据
var t_img="<%=get_imgs%>";
var t_link="<%=get_links%>";
function get_data()
{
if (t_img!=null && t_img!=null)
{
var tmp;
tmp=t_img;
imgs=tmp.split(",");
tmp=t_link;
links=tmp.split(",");
show_ad();
}
else
{
return;
}
}
//开始显示数据
function show_ad()
{
Form1.ad_img.src=imgs[count];
ad_link.href=links[count];
count=count+1;
if (count==3)
{
count=0;
}
window.setTimeout("show_ad()",5000);
}
//手动更新广告
function change_ad(c)
{
if (c>=0 && c<=3)
{
Form1.ad_img.src=imgs[ c];
ad_link.href=links[ c];
count=c
}
}
get_data();
</script>
后台部分:
slide_ad.ascx.cs
namespace eudown_news.usercontrols
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
/// <summary>
/// slide_ad 的摘要说明。
/// 轮循广告(5秒钟切换一次)
/// </summary>
public class slide_ad : System.Web.UI.UserControl
{
protected string get_imgs;
protected string get_links;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
// get_imgs="images/31.gif,images/32.gif,images/33.gif";
// get_links="http://www.zz.ha.cn,http://www.sina.com.cn,http://www.eudown.com";
get_data();
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器
/// 修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//读取频道的编号
private int _class_id=0;
public int class_id
{
set
{
_class_id=value;
}
get
{
return(_class_id);
}
}
//显示内容的文件
private string _show_file="show_news_content.aspx";
public string show_file
{
set
{
_show_file=value;
}
get
{
return(_show_file);
}
}
//读取数据(前三条)
private void get_data()
{
System.Text.StringBuilder strsql=new System.Text.StringBuilder();
strsql.Append("select top 3 news_id,news_pic,news_title,news_changedate from news_tb ");
strsql.Append(" where news_class="+class_id +" order by news_changedate desc");
DataTable dt=new DataTable();
functions fs=new functions();
dt=fs.get_dataset(strsql.ToString()).Tables[0];
if (dt.Rows.Count>0)
{
for (int i=0;i<dt.Rows.Count;i++)
{
get_imgs+=dt.Rows[ i]["news_pic"].ToString()+",";
get_links+=this.show_file+"?id="+dt.Rows[ i]["news_id"].ToString()+",";
}
if (get_imgs.Length>0)
{
get_imgs=get_imgs.Substring(0,get_imgs.Length-1);
}
if (get_links.Length>0)
{
get_links=get_links.Substring(0,get_links.Length-1);
}
}
dt.Dispose();
}
}
}
相关文章推荐
- 我一个图片怎么都显示不出来,是博客程序原因还是其他?
- 用js实现的一个Flash滚动轮换显示图片代码生成器
- 【翻译搬运】一个基于css3的图片轮换程序
- OpenGL织梦之旅【第三章】编写一个显示图片的程序
- 创建一个基于ViSP的图片显示程序
- 一个图片轮换显示的实现,使用DIV+JS,支持Firefox,IE,Safiri
- 用js实现的一个Flash滚动轮换显示图片代码生成器
- 一个wepy开发微信小程序时图片在真机上不显示的问题
- VS2010配置opencv2.4.8,用MFC创建显示一个图片的简单程序
- 一个图片轮换显示的实现,使用DIV+JS,支持Firefox,IE,Safiri
- 用android做的一个简单的点击按钮显示图片的程序
- 帖一个根据服务器时间作为起始,显示时钟的小程序
- 一个app,多个入口图标,activity-alias实现多程序入口并显示指定view完成
- 练习 1- 10 编写一个将输入复制到输出的程序,并将其中的制表符替换成 \t,把回退符替换成\b,把反斜杠替换为\\。 这样就可以将制表符和退格符以可见的方式显示出来。
- 同一个ImageView显示不同的图片--->level-listnd
- 如何一个load 加载完成后把图片一次性显示出来
- opencv第一个示例程序运行正常,但图片不能显示
- OpenCV3 一个窗口显示多个图片的实现函数
- opencv显示图片小程序
- 写一个程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”)