[2D] dúvida flash/actionscript

Started by gt35, July 03, 2006, 06:17:00 PM

Previous topic - Next topic

gt35

viva!
sou novo aqui.
estou a fazer uma cena em flash que é:
uma galeria de imagens. estando as imagens no exterior e o flash as ir buscar a partir de uma base de dados em xml.
o flash lê cada nó do xml e importa as imagens, e vai criando movieclips para cada imagem. isto tudo dinâmicamente.
como li por ai que à aqui pessoal que mexe em flash ajudem ai se faz favor.. aqui fica o código.. está quase completo.. agora so nao consigo redimensionar as imagens para o tamanho que quero.. tentem ajudar..



function getLabel(_arg1) {
   return (baseNode.childNodes[_arg1].childNodes[0].firstChild.nodeValue);
}
function getLink(_arg1) {
   return (baseNode.childNodes[_arg1].childNodes[1].firstChild.nodeValue);
}
function getWidth(_arg1) {
   return (baseNode.childNodes[_arg1].childNodes[2].firstChild.nodeValue);
}
function getHeight(_arg1) {
   return (baseNode.childNodes[_arg1].childNodes[3].firstChild.nodeValue);
}
function getPic(_arg1) {
   return (baseNode.childNodes[_arg1].childNodes[4].firstChild.nodeValue);
}
function alphaIn(_arg1) {
   if (_arg1.txt.txt._currentframe<9) {
      _arg1.txt.txt.play();
   }
}
function alphaOut(_arg1) {
   _arg1.txt.txt.gotoAndStop(1);
}
function launchProject(_arg1) {
   myURL = new String(("\\'popup"+_arg1.launchURL)+"\\'");
   myHeight = new String(("\\'height="+_arg1.launchHeight)+",");
   myWidth = new String(("width="+_arg1.launchWidth)+",");
   getURL((((("java script:openNewWindow("+myURL)+",\\'HMX\\',")+myHeight)+myWidth)+"toolbar=no,scrollbars=no\\')");
}
baseNode = featXML.firstChild;
var child = baseNode.firstChild;
while (child != null) {
   numItems++;
   child = child.nextSibling;
}
_root.createEmptyMovieClip("featuredProjects", 1);
featuredProjects._y = 6;
featuredProjects._visible = false;
i = 0;
while (i<numItems) {
   featuredProjects.attachMovie("thumb", "thumb"+i, i);
   myN = eval("featuredProjects.thumb"+i);
   myN.hitArea = myN.hA;
   myN.createEmptyMovieClip("pic", 1);
   myN.createEmptyMovieClip("txt", 2);
   myN.txt._y = -5;
   myN.hA._visible = false;
   myN.attachMovie("thumbLabel", "thumbLabel", 2);
   myN.thumbLabel.txt = getLabel(i);
   myN.thumbLabel._y = -33;
   myN.thumbLabel._alpha = 0;
   myPic = getPic(i);
   myLabel = getLabel(i);
   myN.pic.loadMovie("images/"+myPic, 1);
   myN.txt.attachMovie("txt", "txt", 2);
   myN.txt.txt.txt = myLabel;
   myN.launchURL = getLink(i);
   myN.launchWidth = getWidth(i);
   myN.launchHeight = getHeight(i);
   myN.onPress = function() {
   };
   i++;
}

Caneco


gt35

C-aneco, não é isso, visto aí ele não redimensionar as imagens.. ele ai apenas as importa.. e isso eu ja fiz..
o que quero mesmo é que olhem para o meu código e acrescentem apenas a parte de redimensionar as imagens.. resto está la tudo.

Caneco

QuoteC-aneco, não é isso, visto aí ele não redimensionar as imagens.. ele ai apenas as importa.. e isso eu ja fiz..
o que quero mesmo é que olhem para o meu código e acrescentem apenas a parte de redimensionar as imagens.. resto está la tudo.
é que tu tens um codigo tao extenço para carregar imagens por xml que e uma coisa que nao precisas... :|
ve ai neste site...
www.csmiguel.pt/mico

ai o que utilizo para carregar as imagem é o Loader um componente do proprio flash... que redimensiona a imegem proporcionalmente à altura da imagem...
o que o loader faz é ligar uma imagem fora do flash e carregar para o flash... procura info sobre isso..

gt35

eu sei.. mas esse código é muito limitado.
o que usas apenas te carrega a imagem como se carregasses outro swf.
o que eu uso é completamente modificavel apartir do xml. ou seja posso acrescentar imagens no xml k ele actualiza automaticamente no flash.. e cria ao mesmo tempo mais um movieclip com as animaçoeszinhas todas e tal..
é muito mais complexo que esse... ate os links estao no xml.. o link de cada imagem que vai ser carregada.. o flash vai buscar ao xml a imagem e o link que essa imagem vai abrir.
assim posso em php fazer um codigo para acrescentar no xml mais imagens.. k sao automaticamente actualizadas no flash com o seu proprio link..
torna-se muito mais pratico de qualquer pessoa actualizar essa galeria.
agora imagina que é alguem k nao percebe e mete uma imagem com 2000 pixeis.. rebenta.me logo o flash.. ou seja.. tenho k arranjar a formula para redimensionar as imagens importadas..

Caneco

pois mas por exemplo se meter um flash com um loader chamado picload e 2 butoes um NEXT e outro PREV depois tinhas numa pasta chamada \\"imagens\\" com estes files:

pic1.jpg
pic2.jpg
pic3.jpg

no NEXT metias:
on(release){

  // nao sei se é + ou é add ou é & experimenta

  y++

  direct="imagenspic" & y & ".jpg"

  picload.contentPath(direct)

}

e no PREV metias:
on(release){

  // nao sei se é + ou é add ou é & experimenta

  y--

  direct="imagenspic" & y & ".jpg"

  picload.contentPath(direct)

}

tens é defenir que o y começa por 1...

depois tinhas de criar uma rotina que disses-se quando era o fim do file ou assim... mas digo-te ficaria muito mais simples assim na minha opiniao o codigo no webdesign deve ser simples... ta certo que o site deve ser o mais dinamico possivel... mas por exemplo nesse site esta o mais dinamico possivel... e se quiserem uma pequena alteraçao tambem nao e nada que nao se possa abrir o .fla e alterar... afinal de contas para fazer um site em flash em que quase nao o utilizas... nao vale a pena nem perder tempo com ele... para isso fazes em php... :|

gt35

eu sei que deve ser simples.. mas aqui nao pode ser.. a maneira que me estas a mostrar é um pouco primitiva ou rigida como queiras.. eu quero algo mais flexivel, que nao tenha que ir ao fla e voltar a comprimir..
assim funciona como um programa.. mesmo para uma pessoa que nao perceba nd pode alterar..

prefiro perder tempo e fazer algo que seja realmente bom.
a maneira que disses-te ate nao está mau mas.. imagina também que a pessoa mete mais uma imagem.. tu tens k ter um limite senao clicas no next e vai pa 6Ã,ª imagem e nao tem 6 imagens.. ou seja tens que ter uma variavel que te dê o limite de imagens..
agora eu nao quero impor limites..
quero tudo dinamico... o mais maleavel possivel...

hum..  nesse caso era \\"+\\"