Después de leer algunas publicaciones sobre esto, aprendí mucho y ahora quiero compartirlo con todos ustedes.
Flash ahora es solo una función de visualización. Durante el proceso, leí cosas de otras personas y sentí que la paginación parece tener una forma muy simple de implementarlo.
Básicamente se transmite mediante xml.
Tanto los componentes de la lista como la cuadrícula de datos se pueden usar para la visualización. Utilizo texto dinámico aquí porque creo que es demasiado problemático usar componentes.
Así que usé un método estúpido, no había otra manera, no pude encontrar uno mejor~~~
La lista[..] en el código siguiente es el nombre del texto dinámico y se muestran 15 elementos a la vez.
//El programa de visualización es el siguiente:
//Nombre del marco "lista"
detener();
var logList = nuevo XML();
var logroot;
var página:Número; //Página actual
var Tpage:Number; //Guardar la página total
var Tnum:Número; //Número total de registros
var logname:String; //Nombre de la categoría de registro
vartemp;
var i:Number;
// Aquí uso una matriz para almacenar el número de identificación correspondiente. Si usa componentes, no tiene por qué ser tan problemático.
var ids = new Array(15);
//Dos botones para pasar páginas
bn_u.enabled = falso;
bn_d.enabled = falso;
if (página == nula o página<1) {
página = 1;
}
//-----------------------------
//Borrar función;
función myclear() {
para (i=1; i<16; i++) {
identificadores[i-1] = 0;
lista["lbn"+i]._visible = false;
lista["ltitle"+i].text = "";
lista["autor"+i] = "";
lista["ltime"+i] = "";
}
}
//------------------------------------------
//------------------------------------------
myclear();
pageInfo.text = "Leyendo datos...";
logList.ignoreWhite = verdadero;
logList.load("Tree_list.asp?log_cat="+cat_id+"&page="+página);
//------------------------------------------------
//obtener función de datos
función logFunc(e) {
si (e) {
logroot = logList.firstChild;
nombre de registro = logroot.attributes.nombre de registro;
Tpage = logroot.attributes.Tpage;
Tnum = logroot.atributos.Tnum;
temp = logroot.firstChild;
list.ltitle1.text = Ftitle(temp.firstChild.nodeValue, 22);
lista.lautor1 = temp.atributos.autor;
list.ltime1 = temp.attributes.Addtime;
ids[0] = temp.atributos.id;
yo = 1;
list.lbn1._visible = verdadero;
// Bucle para leer nodos
mientras (temp.nextSibling! = nulo) {
temp = temp.nextSibling;
yo ++;
//Si se muestra de otra manera, simplemente cámbialo.
ids[i-1] = temp.atributos.id;
lista["lbn"+i]._visible = verdadero;
lista["ltitle"+i].text = Ftitle(temp.firstChild.nodeValue, 22);
lista["lautor"+i] = temp.attributes.author;
lista["ltime"+i] = temp.attributes.Addtime;
}
pageInfo.text = nombre de registro+"Registros totales"+Tnum+"Artículos totales"+Tpage+"La página actual es "+página+"página"+"15/página";
bn_u.enabled = verdadero;
bn_d.enabled = verdadero;
} demás {
pageInfo.text = "Actualmente no hay registros.";
list.ltitle1.text = "Error al leer los datos, ¡póngase en contacto con el administrador!";
}
}
// Una función de título de formato personalizado, por temor a que el título sea demasiado largo
función Ftítulo(s, n) {
si (longitud(es)>n) {
s = s.substring(0, n-1)+"...";
}
devolver s;
}
logList.onLoad = logFunc;
//-------------------------------------
//Acción del botón
Bn_up = nuevo Objeto();
// Evento de botón, determina si el tamaño de la página excede el valor
Bn_up.click = función(evt) {
si (página>1) {
_root.page--;
gotoAndPlay("ciclo");
} demás {
detener();
}
};
Bn_d = nuevo Objeto();
Bn_d.click = función(evt) {
si (página<Tpágina) {
_root.página++;
gotoAndPlay("ciclo");
} demás {
detener();
}
};
bn_u.addEventListener("hacer clic", Bn_up);
bn_d.addEventListener("click", Bn_d);
sólo hay una palabra para "ciclo":
gotoAndPlay("lista");
//Forma un bucle simple
Tree_list.asp:
//log es mi tabla de registro, log_cat es el asp debajo de la tabla de clasificación. Está muy claro
<?xml version="1.0" encoding="gb2312"?>
<%
Respuesta.ContentType = "texto/xml"
Response.CacheControl = "sin caché"
Response.AddHeader "Pragma", "sin caché"
Respuesta.Expira = 0
dim log_cat,página,tamaño de página,Tnum,Tpage,nombre_registro
página=Solicitud de árbol("página",1)
log_cat=TreeRequest("log_cat",1)
tamaño de página = 15
callTree_rs
si log_cat=0 o log_cat="" entonces
sql="seleccione * del orden de registro por escrito_time DESC,log_ID DESC"
demás
sql="seleccione * de log,log_cat donde log.cat_id=log_cat.ID y cat_id="&log_cat&" ordene por tiempo_escrito DESC,log_ID DESC"
terminar si
rs.open sql, conexión, 1,1
rs.PageSize=tamaño de página
Tnum=rs.RecordCount
Tpage=Int(Tnum/tamaño de página*-1)*-1
si página="" entonces página=1
si Tnum<>0 entonces rs.AbsolutePage=página
si log_cat=0 o log_cat="" entonces
log_name="[todas las categorías]"
demás
log_name="["&rs("cat_name")&"]"
terminar si
'El siguiente xml de salida
'------------------------------------------------
respuesta.write("<Tree logname='"&log_name&"' Tnum='"&Tnum&"' Tpage='"&Tpage&"'>")
si rs.eof entonces
rs.cerrar
demás
hacerlo mientras no sea rs.eof y pageSize>0
respuesta.write("<Trees Author='"&rs("log_author")&"' Addtime='"&rs("write_time")&"' id='"&rs("log_ID")&"'>")
respuesta.write("<![CDATA["&rs("log_tittle")&"]]></Trees>")
tamaño de página = tamaño de página-1
rs.movenext
bucle
rs.cerrar
terminar si
//Cerrar rs
callTree_rscerrar
callTree_conclose
respuesta.write("</Árbol>")
%>
El código parece muy complicado. Espero que pueda ser útil para los amigos que están haciendo esto. Si hay algún error en lo anterior, dímelo
. Fuente: www.flashbank.cn.