日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

ASP flash下拉列表(顯示圖片)_Flash教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:flash與數(shù)據(jù)庫的連接
確切地說..flash是不可以直接與數(shù)據(jù)庫連接的.只能是通過ASP(只是我比較了解ASP,也可以是其他的PHP/JSP等);所以呢.首先,先在ASP里編寫好連接數(shù)據(jù)庫的語句%dim

在上一次我介紹了數(shù)據(jù)庫與flash 連接方式.在這里,這一方面的我就不多說了....
還有ASP中的代碼.我也略過不說.就只是貼出來...
<!--#include file="conn.asp"-->
<%
dim rsBiClass,outBigClass,outBigClassID
sql="select * from bigclass"
set rsBigClass=server.CreateObject("adodb.recordset")
rsBigClass.open sql,conn,1,1
do while not rsBigClass.eof
outBigClass=outBigClass&rsBigClass("bigClass")&"/"
outBigClassID=outBigClassID&rsBigClass("id")&"/"
rsBigClass.movenext
loop
response.write ("outBigClass="&outBigClass&"&")
response.write ("outBigClassID="&outBigClassID)
rsBigClass.close
set BigClass=nothing
conn.close
set conn=nothing
%>
保存為readBigClass.asp <!--#include file="conn.asp"-->
<%
dim bigid,outSmallClass
bigid=request.Form("bigid")
sql="select * from smallclass where bigid="&bigid
set rsSmallClass=server.CreateObject("adodb.recordset")
rsSmallClass.open sql,conn,3,3
do while not rsSmallClass.eof
outSmallClass=outSmallClass&rsSmallClass("smallclass")&"/"
outSmallClassPic=outSmallClassPic&rsSmallClass("pic")&"/"
rsSmallClass.movenext
loop
response.write ("outSmallClass="&outSmallClass&"&")
response.write ("outSmallClassID="&outSmallClassPic)

rsSmallClass.close
set rsSmallClass=nothing
conn.close
set conn=nothing
%>
保存為readSmallClass.asp, 相信大家都看得懂這段ASP代碼.假如不懂的話.跟幀后.我再注說明了.
--------------------------------------------------------------------------------
現(xiàn)在就進(jìn)入到flash里面去編程了.
從組件中找現(xiàn)個(gè)下拉列表,拉入兩個(gè)到場景中.將其分別命名為myBigCmb,mySmaCmb
在第一幀中寫上:
System.useCodepage = true;
var readBigL = new LoadVars();//定義一個(gè)LoaVars類對(duì)像.
readBigL.load("readBigClass.asp");//加載readBigClass.asp頁面.
readBigL.onLoad = function(su) {
if (su) {
//加載readBigClass.asp成功
_root.gotoAndPlay(2);
}
};
stop();//這第二幀的大部分內(nèi)容在上個(gè)幀子中都用到過.無非就是從數(shù)據(jù)庫取出數(shù)據(jù),把數(shù)據(jù)分別放進(jìn)定義好的數(shù)組里面去.
第二幀:
var bigClassA = new Array();
var bigClassIDA = new Array();
for (i=0; i<readBigL.outBigClass.length; i ) {
bigClassA = readBigL.outBigClass.split("/", i);
bigClassIDA = readBigL.outBigClassID.split("/", i);
}
for (j=0; j<bigClassA.length; j ) {//這是把大類放進(jìn)第一個(gè)下拉列表中.
myBigCmb.addItem({label:bigClassA[j], data:bigClassIDA[j]});//這句是為下拉列表添加數(shù)據(jù),假如不是很清楚就找一下組件教程來學(xué)一下:)
}
intiItem = myBigCmb.selectedItem.data;//這是獲得第一個(gè)下拉列表的最初顯示的那個(gè)值,假如不加這個(gè).那么.一運(yùn)行那個(gè)flash,第二個(gè)下拉列表會(huì)沒有值.
getSmallClass(intiItem);
//這個(gè)getSmallClass()是一個(gè)自定義函數(shù).后面再介紹.它的功能就是從數(shù)據(jù)庫中取得被選中的大類相對(duì)應(yīng)的小類的值.把值取出來后再把其值賦到第二個(gè)下拉列表.
//--------大類的change----------------------------------------
my = {};
my.change = function(cmb) {//這是大類也就是第一個(gè)下拉列表的change事件.
bigidf = cmb.target.selectedItem.data;//獲得第一個(gè)下拉列表中被選中的選項(xiàng)的data值.
getSmallClass(bigidf);
//這里再調(diào)用自定義函數(shù).這里就是當(dāng)大類一變,就從數(shù)據(jù)庫中取出相對(duì)應(yīng)的小類的值,同時(shí)把值取出來后再把其值賦到第二個(gè)下拉列表.
};
//--------從數(shù)據(jù)庫里取得小類的值-----------------
function getSmallClass(bigidf) var smallClassSV = new LoadVars();
var smallClassLV = new LoadVars();
smallClassSV.bigid = bigidf;
//注重這里的寫變量的方式用了smallClassSV.bigid,假如不加前面的smallClassSV,那么bigid的值就不會(huì)傳到被加載的ASP文件里
smallClassSV.sendAndLoad("readSmallClass.asp", smallClassLV, "POST");
//這里用到了這個(gè)sendAndLoad方法來加載頁頁.同時(shí)把結(jié)果返回到smallClassLV類里面來.
smallClassLV.onLoad = function(su) {
//注重這里的onLoad 事件是smallClassLV的,而不是smallClassSV的(剛開始用這個(gè)方法時(shí),就是這里卡了我很^_^久)
if (su) {
_global.smallClass = smallClassLV.outSmallClass;
_global.smallClassID = smallClassLV.outSmallClassID;
setSmallClass();
//這里調(diào)用了另一個(gè)自定義函數(shù),這個(gè)函數(shù)的作用是為第二個(gè)下拉列表賦值,將smallClassLV接收來的數(shù)據(jù)放到第二個(gè)下拉列表中.
} else {
aa.text = "數(shù)據(jù)連接不成功";
}
};
}
//----把小類的值放到下拉列表中----------------------------------------
function setSmallClass() {{//這個(gè)就是自定義函數(shù).其作用就是為小類(第二個(gè)下拉列表)賦值
//假如大家看得懂上面的,那么下面的想必是不用再作說明了吧...呵呵....
var smallClass = _global.smallClass;
var smallClassID = _global.smallClassID;
var smallClassA = new Array();
var smallClassIDA = new Array();
for (i=0; i<smallClass.length; i ) {
smallClassA = smallClass.split("/", i);
smallClassIDA = smallClassID.split("/", i);
}
mySmaCmb.removeAll();
//清除在這個(gè)下拉列表中的原來的值.
for (j=0; j<smallClassA.length; j ) {
mySmaCmb.addItem({label:smallClassA[j], data:smallClassIDA[j]});
}
picname = mySmaCmb.selectedItem.data;//這個(gè)是取得第二個(gè)下拉列表的最始值.
loadpic(picname);//調(diào)用加載圖片的函數(shù).
}
//---------小類的change-------------------------------
mys = {};
mys.change = function(cmb) {
//這是小類的change事件
sid = cmb.target.selectedItem.data;//當(dāng)小類的選中值(也就是selectedItem)發(fā)生改變時(shí),取得小類的選中的data值.
loadpic(sid);//調(diào)用加載圖片的值,小類一發(fā)生變化,那么相對(duì)應(yīng)的顯示的圖片也是要變化的.
};
//-------------加載外部圖片------------------------------
function loadpic(picname) {//這個(gè)就是加載圖片的函數(shù)了.
_root.createEmptyMovieClip("picmc", 0);//創(chuàng)建一個(gè)空白影片剪輯.
_root.picmc._x = 200;
_root.picmc._y = 100;//設(shè)置空白影片的位置.
_root.picmc.loadMovie(picname);//加載圖片,注重里面的picname是當(dāng)調(diào)用這個(gè)函數(shù)時(shí),所傳進(jìn)入進(jìn)來的(其實(shí)就是圖片名字)
}
myBigCmb.addEventListener("change", my);//添加下拉列表的change事件.
mySmaCmb.addEventListener("change", mys);
stop();
//OK,have a try!

分享:Flash制作超炫彩色線條圖案動(dòng)畫特效
大家好,今天和大家分享一下利用線條來制作一種超炫的Flash線條特效效果。在制作之前,讓我們一起先來看一下最終的效果。點(diǎn)擊這里下載源文件第1步:新建一個(gè)新

來源:設(shè)計(jì)前沿收集整理//所屬分類:Flash教程/更新時(shí)間:2008-03-05
相關(guān)Flash教程