begin process at 2012 02 08 17:39:01
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > PETIT EFFET DE TEXTE

PETIT EFFET DE TEXTE


 Information sur la source

Note :
4,5 / 10 - par 2 personnes
4,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Niveau :Débutant Date de création :04/06/2005 Date de mise à jour :04/06/2005 17:28:26 Vu :6 904

Auteur : MaX_62

Ecrire un message privé
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Voici un snippet qui vous permettra de faire un petit effet de texte. Les lettres partent a tour de rôle de N espaces du bord, et se déplacent vers la gauche d'espace en espace. Le nombre d'espaces est configurable.
En fait, c'est assez délicat a expliquer, je vous laisse regarder ;)

Source

  • ;Alias
  • alias dtext {
  • if ($1 != $null && $2 isnum) {
  • var %m 1- $+ $calc($len($1) * $2)
  • if ($3 isnum %m) {
  • var %l $int($calc($3 / $2)) , %k $calc($3 - %l * $2)
  • return $+($left($1,%l),$str($chr(160),$iif($calc($2 - %k) == $2,0,$calc($ifmatch -1))),$mid($1,$calc(%l +1),1))
  • }
  • elseif (!$3) { return $gettok(%m,2,45) }
  • }
  • }
  • ;Exemples d'utilisation
  • alias dtext_editbox { var %i 1 , %t $1- | while ($dtext(%t,40,%i)) { editbox -a $ifmatch | inc %i } }
  • ;En tapant /dtext_editbox <texte>, le texte apparaitra en défilant dans l'éditbox de la fenêtre active. Peut être utile pour créer un effet au démarrage d'un script.
  • dialog dtext {
  • title "Exemples pour /dtext"
  • size -1 -1 140 26
  • option dbu
  • text "Cliquez sur <Faire défiler le texte> pour commencer ;)", 1, 2 3 139 8
  • button "Faire défiler le texte", 2, 11 13 56 10
  • button "Faire défiler le titre", 3, 69 13 56 10
  • }
  • on *:DIALOG:dtext:sclick:2,3:{
  • if ($did == 2) { var %i 1 , %t $did(1) | while ($dtext(%t,20,%i)) { did -ra $dname 1 $ifmatch | inc %i } }
  • elseif ($did == 3) { var %i 1 , %t $dialog($dname).title | while ($dtext(%t,30,%i)) { dialog -t $dname $ifmatch | inc %i } }
  • }
  • ;Tapez "/dialog -m dtext dtext" et testez les 2 boutons, l'un fait défiler le texte d'un ID, l'autre fait défiler la barre de titre du dialog :)
;Alias 

alias dtext { 
  if ($1 != $null && $2 isnum) { 
    var %m 1- $+ $calc($len($1) * $2) 
    if ($3 isnum %m) { 
      var %l $int($calc($3 / $2)) , %k $calc($3 - %l * $2) 
      return $+($left($1,%l),$str($chr(160),$iif($calc($2 - %k) == $2,0,$calc($ifmatch -1))),$mid($1,$calc(%l +1),1)) 
    } 
    elseif (!$3) { return $gettok(%m,2,45) } 
  } 
} 

;Exemples d'utilisation 

alias dtext_editbox { var %i 1 , %t $1- | while ($dtext(%t,40,%i)) { editbox -a $ifmatch | inc %i } } 
;En tapant /dtext_editbox <texte>, le texte apparaitra en défilant dans l'éditbox de la fenêtre active. Peut être utile pour créer un effet au démarrage d'un script. 

dialog dtext { 
  title "Exemples pour /dtext" 
  size -1 -1 140 26 
  option dbu 
  text "Cliquez sur <Faire défiler le texte> pour commencer ;)", 1, 2 3 139 8 
  button "Faire défiler le texte", 2, 11 13 56 10 
  button "Faire défiler le titre", 3, 69 13 56 10 
} 
on *:DIALOG:dtext:sclick:2,3:{ 
  if ($did == 2) { var %i 1 , %t $did(1) | while ($dtext(%t,20,%i)) { did -ra $dname 1 $ifmatch | inc %i } } 
  elseif ($did == 3) { var %i 1 , %t $dialog($dname).title | while ($dtext(%t,30,%i)) { dialog -t $dname $ifmatch | inc %i } } 
} 
;Tapez "/dialog -m dtext dtext" et testez les 2 boutons, l'un fait défiler le texte d'un ID, l'autre fait défiler la barre de titre du dialog :) 

 Conclusion

Utilisation :

$dtext(<texte>,<nombre>,<N>)

<texte> est le texte a faire défiler.
<nombre> est le nombre d'espaces que devront parcourir les lettres avant d'arriver a leur place normale.
<N> sert a retourner la Nième étape dans le déroulement de l'animation. Si <N> vaut zéro ou n'est pas spécifié, retourne le nombre total d'étapes.

Comme vous l'avez compris, cet alias seul ne sert a rien, car il ne retourne qu'une seule étape de l'animation. Il faut donc l'adapter à l'aide d'une boucle. Je vous ai donc fourni 2 exemples d'utilisation avec le code ;)




 Historique

04 juin 2005 17:25:32 :
- Erreur lors du copier/coller :p
04 juin 2005 17:28:26 :
Erreur (bis)

 Sources du même auteur

SOLVEUR DE SUDOKU
Source avec une capture DERNIERS CODES SUR CODES-SOURCES
BARRE DE TEXTE DEFILANT
Source avec Zip Source avec une capture FKEYS (F1-12, CONTROL + F1-12, SHIFT + F1-12)
Source avec Zip HOROSCOPE

 Sources de la même categorie

Source avec une capture ALIAS POUR TELECHARGER UNE VIDEO SUR YOUTUBE (MISE A JOUR V1... par WorldDMT
ANTI SAJOIN par Maka57
PERMET DE CHERCHER UN HOST par ACoZz
Source avec Zip SIMULATION D'UNE ROULETTE QUI TOURNE par wims
SELPOS - SELECTION ET POSITION ! par wims

Commentaires et avis

Commentaire de tofu le 04/06/2005 17:56:23

ça pourrait être sympa à combiner ça ek ton truc de texte défilant ds une picture window

Commentaire de wims le 04/06/2005 18:07:21

J'aime bien cependant juste une remarque :
if ($1 != $null && $2 isnum) {
>>
if ($1 && $2 isnum) {

:)

Commentaire de MaX_62 le 04/06/2005 19:03:20

wims > if ($1 != $null) et if ($1) c'est pas le même...
Si $1 == 0, alors "if ($1 != $null)" est faux alors que "if ($1)" est vrai... Compris ? :]
tofu > merci, pas bête j'vais y réfléchir...

Commentaire de KiNdErMaXi le 04/06/2005 23:04:50

en tout cas, ca va vite :x et ca clignote :(

Commentaire de Exagone le 03/07/2007 18:23:42

je trouve sa bien , meme remarque que kindermaxi :)

 Ajouter un commentaire




Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,730 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales