Variables y Strings
Como posiblemente sabris (que me da que no tenais ni idea...) AutoPlay Media Studio
7.0 (a partir de ahora AMS) usa el leguaje de programacin LUA aunque un tanto
modificado y como todo lenguaje de programacin usa Variables y Strings.
Las variables contienen una accin determinada y estas acciones devuelven o bien String
o bien Tablas (algunas acciones no devuelven nada, pero pocas son las que no lo hacen) y
para mas tarde poder obtener esa String o Tabla debemos llamar a la Variable, por eso
cada Variable tiene su nombre propio, pueden haber dos Variables que tengan el mismo
nombre, aunque yo no lo recomiendo si vas a usar la String o tabla que la variable
devuelva, en el caso de que no quieras utilizar la String que devuelva la variable pues no
importa que hayan varias con el mismo nombre.
Las variables NO pueden llamarse de cualquier forma, su nombre tiene que cumplir unas
normas.
Las variables NO pueden llamarse: and, end, if, else, elseif, break, for, do, then, in,
repeat, function, or, true, false, in, local, nil, return, table ni while, ya que son nombres
reservados para la estructura del script.
Las variables tampoco pueden empezar por un numero ni un signo,solo puede empezar
por una letra, aunque luego puede seguir por un numero o una _ (barra baja).
Por lo que:
2fun = una variable invalida
hackershn_foro = variable valida
local = variable invalida
Ahora os voy a mostrar como usar una variable para poder obtener una String que mas
tarde utilizaremos
Por ejemplo:
CDIGO:
cs = Drive.GetFreeSpace("C:");
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Con eso obtendramos una String alojada en la variable cs que contiene el espacio libre en
Mb que quedan en la unidad C.
CDIGO:
Label.SetText("Label1", cs);
Con eso aplicaramos al Label 1 el texto cs que corresponde a lo que ya dije (espacio
libre...)
Para hacerlo solo tenemos que poner en el primer argumento ek nombre del Label entre
comillas "" y en el segundo argumento el nombre de la variables sin comillas, ya que si
llevase comillas seria una String y no una variable.
Y como bien observareis ese cdigo no se puede llamar por una variable ya que no
devuelve nada, solo ejecuta una accin.
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 1 Practica
Vamos a practicar lo que habis ledo en la teora, haciendo un simple reloj digital.
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
3-Ahora creamos una Label y ponemos la fuente que mas nos guste y la ponemos en el
centro, tirando a la izquierda...
4-Ahora damos 2 clics sobre el fondo de la pgina y damos a Script, ahi buscamos la
pestaa On Timer y nos colocamos sobre ella
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
5-Ahora ponemos ah el siguiente cdigo:
CDIGO:
gh = System.GetTime(TIME_FMT_HOUR);
gm = System.GetTime(TIME_FMT_MIN);
gs = System.GetTime(TIME_FMT_SEC);
CDIGO:
Label.SetText("Label1", gh..":"..gm.."."..gs);
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
7-Ahora activaremos el temporizador, que ejecutara el codigo de On Timer cada X
tiempo...
Vamos a la pestaa On Preload y ponemos el siguiente codigo:
CDIGO:
Page.StartTimer(1000);
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 2
Estructura de control (if, else, etc...)
La estructura de control (no sabia como llamarlo...) en los scripts es muy util, y sin ella
poca cosa podemos hacer...
Por el momento os voy a ensear a usar el if, else, then, for, do y end.
Un script de ejemplo:
CDIGO:
gbt = Button.GetText("Button1");
if gbt == "Instalar" then
File.Open("AutoPlay\\Docs\\Setup.exe", "", SW_SHOWNORMAL);
else
Dialog.Message("Noticia", "El texto del boton no es Instalar.", MB_OK,
MB_ICONINFORMATION, MB_DEFBUTTON1);
end
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
CDIGO:
gbt = Button.GetText("Button1");
if gbt == "Instalar" then
File.Open("AutoPlay\\Docs\\Setup.exe", "", SW_SHOWNORMAL);
elseif gbt ~= "Instalar" then
Dialog.Message("Noticia", "El texto del boton no es Instalar.", MB_OK,
MB_ICONINFORMATION, MB_DEFBUTTON1);
end
El nico cambio en este script respecto al anterior es que hemos cambiado el else por
elseif gbt ~= "Instalar" then
Para que lo entendais un poco mejor, os voy a mostrar los simbolos de relacion que
podemos usar en los if, else y elseif...
== (Igual a...)
~= (No es igual a...)
<= (menor o igual que...)
>= (mayor o igual que...)
< (menor que...)
> (mayor que...)
Con el for y el do podemos repetir una accin tantas veces como queramos aadiendo
variables, por lo que con esto es posible de que aunque sea el mismo cdigo no siempre
pase lo mismo al ejecutarlo, bueno, mejor os lo enseo...
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Y ahora un script de ejemplo, para que lo entendis mejor:
CDIGO:
for e=0,100,1 do
Label.SetText("Label1", e);
end
Ese script le dara a la variable e un valor distinto cada vez, empezara en el 0 y acabara
en el 100 yendo de 1 en 1 (el 0 equivale al empezar, el 100 al acabar, y el 1 al paso)
Entonces le aplicaria al "Label1" el texto 0,luego el 1,luego el 2,y as sucesivamente hasta
llegar al acabar,en este caso el 100,podeis hacer la prueba si queris, pero debo decir que
no tiene un tiempo determinado, sino que hace la accin tan rpida como pueda, por lo
que apenas os dar tiempo a ver los nmeros y veris el 100 cuando acabe.
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 2 Practica
CDIGO:
gh = System.GetTime(TIME_FMT_HOUR);
gm = System.GetTime(TIME_FMT_MIN);
gs = System.GetTime(TIME_FMT_SEC);
Label.SetText("Label1", gh..":"..gm.."."..gs);
CDIGO:
igt1 = Input.GetText("Input1");
igt2 = Input.GetText("Input2");
if igt1 == gh and igt2 == gm then
Audio.Play(CHANNEL_BACKGROUND);
end
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
3-Y en la pestaa On Show ponemos esto:
CDIGO:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 3
Tablas
Las tablas son tambin muy importantes en la programacin, al principio puede que
queris evitarlas y que os resulte algo complicado usarlas, pero en cuanto os
acostumbris la usareis y os ahorrarn varias lneas de cdigo innecesarias...
Las tablas son como las Strings, pero estas pueden albergar varias lneas a la vez, algo
que resultar muy til para no tener que trabajar con decenas o centenas de Strings...
CDIGO:
tablaHN = {"uno","dos","tres","cuatro","cinco","por aqu pase..."};
Y despus, podramos llamar a cualquiera de las Strings de esa tabla de esta manera:
CDIGO:
Con eso se mostrara un mensaje con la String 5 de la tabla, en este caso la String
"cinco"...
CDIGO:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Como veis, es una manera fcil de albergar muchas strings...
CDIGO:
De esa manera se obtendra una tabla que en cada lnea estara la ruta del archivo
(incluyendo el mismo archivo y extensin)
CDIGO:
File.Open(buscar[1], "", SW_SHOWNORMAL);
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 3 Practica
CDIGO:
carpeta = Dialog.FolderBrowse("Selecciona una carpeta:", "C:\\");
if carpeta ~= "CANCEL" then
buscar = File.Find(carpeta, "*.jpg", false, false, nil, nil);
bn = Table.Count(buscar);
for n=1,bn,1 do
fn = String.SplitPath(buscar[n]);
ListBox.AddItem("ListBox1", fn.Filename..fn.Extension, buscar[n]);
end
end
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Primero nos saldr un dialogo para seleccionar carpeta y si no damos a CANCEL pues
buscar archivos JPG en la carpeta, despues contar la cantidad de archivos encontrados
y recatar con String.SplitPath la ruta y aadir al ListBox el nombre de los archivos (con
la extensin incluida...)
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 4
Posicin de los Scripts
Por ejemplo, s damos doble clic sobre el fondo de la pagina de nuestro proyecto, en el
apartado de Scripts veremos una serie de pestaas, por ejemplo On Preload, On Show,
On Close, On Timer, etc... Algo as:
Posicin Pagina
Si situamos un script en la pestaa On Show (En Mostrar) el script har su efecto cuando
la pagina sea mostrada al usuario,ya sea al iniciar la aplicacion o cuando cambiamos de
pagina.
Si situamos el script en la pestaa On Close (En Cerrar) nuestro script ser ejecutado
cuando cerremos la aplicacin o cambiemos a otra pgina.
Si situamos el script en la pestaa On Key el script funcionar cuando pulsemos una tecla.
Tambin hay que tener muy en cuenta las variables que ya hay en cada pestaa, las
variables se encuentran arriba, algo as:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
En ese caso,podriamos hacer esto:
if e_Key == 13 then
Application.Minimize();
End
Eso quiere decir que en el caso de que pulsemos la tecla Enter, la aplicacin se
minimizara, el 13 es el valor Decimal que devuelve el teclado al pulsar el enter, podis
verlo aqu:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
54 36 6
55 37 7
56 38 8
57 39 9
65 41 A or a
66 42 B or b
67 43 C or c
68 44 D or d
69 45 E or e
70 46 F or f
71 47 G or g
72 48 H or h
73 49 I or i
74 4A J or j
75 4B K or k
76 4C L or l
77 4D M or m
78 4E N or n
79 4F O or o
80 50 P or p
81 51 Q or q
82 52 R or r
83 53 S or s
84 54 T or t
85 55 U or u
86 56 V or v
87 57 W or w
88 58 X or x
89 59 Y or y
90 5A Z or z
91 5B (left Windows
key)
92 5C (right Windows
key)
93 5D (application key -
located between
the right
Windows and Ctrl
keys
on most
keyboards)
96 60 0 (numpad with
Num Lock on)
97 61 1 (numpad with
Num Lock on)
98 62 2 (numpad with
Num Lock on)
99 63 3 (numpad with
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Num Lock on)
100 64 4 (numpad with
Num Lock on)
101 65 5 (numpad with
Num Lock on)
102 66 6 (numpad with
Num Lock on)
103 67 7 (numpad with
Num Lock on)
104 68 8 (numpad with
Num Lock on)
105 69 9 (numpad with
Num Lock on)
106 6A * (numpad)
107 6B + (numpad)
109 6D - (numpad)
110 6E . (numpad)
111 6F / (numpad)
112 70 F1
113 71 F2
114 72 F3
115 73 F4
116 74 F5
117 75 F6
118 76 F7
119 77 F8
120 78 F9
122 7A F11
123 7B F12
144 90 Num Lock
145 91 Scroll Lock
186 BA ;
187 BB =
188 BC ,
189 BD -
190 BE .
191 BF /
192 C0 `
219 DB [
220 DC \
221 DD ]
222 DE '
Y en los dems objetos funcionan igual las pestaas, solo que no son iguales, por
ejemplo, en las imgenes est solo el On Click, el On Right-Click, On Enter y On Leave,
solo hay que saber un mnimo de ingls para saber para que sirve cada pestaa.
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 4 Practica
Esta vez haremos que una imagen sea siempre la mitad de grande que la ventana cuando
cambiemos el tamao de la ventana.
Variable:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
2-Creamos una imagen y la colocamos en las coordenadas 0,0 (sea, en la esquina
superior izquierda) y 300px de altura y 200 de anchura:
3-Vamos a las propiedades de la pagina dando doble clic sobre un sitio donde no haya
nada y en la pestaa On Size colocamos este script:
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Leccin 5
Acciones
Despus de tanto tiempo desde la leccin 4 aqu os dejo la 5-1, a partir de ahora las
lecciones sern de Acciones, en varias lecciones os explicar las acciones ms comunes y
con que argumentos se ejecutan
Acciones Application
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista
Acciones Audio
Este tutorial fue creado por Vancete pero fue editado por JDavidVR para que los usuarios tengan una mejor
apreciacin con respecto a su diseo, ya que los tutoriales originales no son muy agradables a la vista