module inscription newsletter haut de page forum mobile

Ateliers et Formations

Scripting : activeItems

Discussion dans 'Archives moteurs' créé par Ismaelray, 24 Juillet 2006.

Tags:
  1. Ismaelray

    Points Repaire:
    550
    Recos reçues:
    0
    Messages:
    42
    Appréciations:
    +0 / 0 / -0
    Scripting : activeItems [résolu]

    Salut tout le monde

    Je me mets au Scripting, et forcément je butte sur les bases.

    Voilà, je cherche la méthode pour activer un layer de moi-même pour pouvoir ensuite utiliser "activeItem"
    Je m'explique :
    J'ai créer, disons, 5 compositions, nommées compo1, compo2, etc.
    Je fait une boucle pour avoir la compo 1, puis la deux, etc.

    Code:
    for (i=0;i<=nbCompTOT;i++){
    nomCOMPO="compo"+i;
    }
    
    mais comment faire pour avoir le focus sur l'une de ces compos ?
     
    #1 Ismaelray, 24 Juillet 2006
    Dernière édition: 25 Juillet 2006
  2. nab17connection

    Points Repaire:
    1 900
    Recos reçues:
    1
    Messages:
    1 051
    Appréciations:
    +0 / 0 / -0
    cool cool :)

    "activeItem" est en général la comp dans laquelle tu te trouves , cela ne peut pas etre un calque (ou parfois un élément séléctionné du projet).

    qqes exemples à la volée (les mots du langage sont en bleu ):
    Code:
    [COLOR="blue"]var[/COLOR] myProj = [COLOR="Blue"]app.project[/COLOR];
    [COLOR="blue"]var[/COLOR] myComp = [COLOR="blue"]myProj.activeItem[/COLOR];
    // stocke le 1er calque sélectionné 
    [COLOR="blue"]var[/COLOR] mySelectedLayer = myComp.[COLOR="blue"]selectedLayers[/COLOR][0];
    // stocke tous les calques sélectionnés 
    [COLOR="blue"]var[/COLOR] mySelectedLayers = myComp.[COLOR="blue"]selectedLayers[/COLOR];
    // forcer la sélection du calque 4
    myComp.[COLOR="blue"]layer[/COLOR](4).[COLOR="blue"]selected[/COLOR] = [COLOR="blue"]true[/COLOR];
    
    pour récupérer les comps du projet, il faut d 'abord parcourir les items de 'myProj' (myProj.item(i) ) et stocker ceux qui t intéressent dans un tableau (ou faire quelquechose direct dessus), il faut tester leur nom ou le fait qu'ils soient sélectionnés (avec "selected" ou alors "selection", regarde dans le guide avec ces mots-clés).
     
  3. Ismaelray

    Points Repaire:
    550
    Recos reçues:
    0
    Messages:
    42
    Appréciations:
    +0 / 0 / -0
    Salut nab17connection

    Ton aide m'a sauvé la vie.:bravo:
    Et je me suis rendu compte que j'avais fait une erreur dans la nomenclature.
    Il s'agit de focus sur une comp. et non sur un layer.:o
    Bref, le souci était que je crée ces dites comps (compo1, compo2, ...) a partir du script :
    Code:
    myProj.items.addComp(nomCOMPO,720,576,1,10,25);
    
    Mais ne permet de l'avoir en temps qu'active.
    J'ai donc créé un algorithme me permettant de retrouver une compo particulière :
    Code:
    var NbreItems=app.project.numItems;
    for (i=1;i<=NbreItems;i++){
      if(app.project.items(i) instanceof Compitem){
        if(app.project.item(i).name="Compo4"){
          alert("item trouvé => numéro "+i);
        }
      }
    }
    
    puis j'ai saisi ton bout de code :
    Code:
    // forcer la sélection du calque 4(que je remplace par i)
    myComp.layer(i).selected = true;
    
    Et ben ça marche !!!!!! Un grand merci à toi nab17connection.

    D'ailleurs, tant que je t'ai sous la main, j'ose te demander une nouvelle chose :
    Comment créer une comp dans un dossier ?
    J'ai testé
    Code:
    app.project.item(4).addComp("test",9,9,1,10,25);
    
    Mais celà ne marche pas...

    A+
    IsmaelRAY
     
  4. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    2 discussions à poursuivre:

    >Bien ranger sa palette projet avec un script
    >Script: creation de dossiers



    Avec la version 7.0 on peux maintenant créer des dossiers: addFolder et placer des items dans un dossiers : parentFolder
     
  5. Ismaelray

    Points Repaire:
    550
    Recos reçues:
    0
    Messages:
    42
    Appréciations:
    +0 / 0 / -0
    Ah ben voilà, Sequelles, c'est exactement ce que je cherchais. La vie est belle quand on trouve ce qu'on veut !!!! Merci !!!!

    Tiens, au fait, où se trouve le moteur de recherche du forum du repaire ? Because, celà m'évitera de poster des questions inutiles...

    Putain, j'suis trop con, je vais de voir que c'était dans la bande bleu en haut, au moment où j'ai posté... Bref... je vais tout de go taper script :D
     
Chargement...
Discussions similaires - Scripting activeItems
  1. geoay
    Réponses:
    1
    Nb. vues:
    1 083

Dernières occasions

 

Partager cette page