![]() |
![]() |
Ventanas de Imagen
Ventanas de imagen
(Picture Windows).-
Introducción.-
Como ya se
describió en el capítulo “ventanas
personalizadas” el parámetro –p
del comando window hace que creemos una ventana de imagen. ¿Qué es una ventana
de imagen? Pues básicamente es lo mismo que una ventana personalizada normal,
con la diferencia de que en ésta, en vez de añadir/borrar/modificar líneas de
texto, lo que haremos será dibujar puntos, líneas, figuras o incluso mostrar
imágenes con formato .bmp. Así pues
las picture windows no son más que un tipo especial de ventanas
personalizadas, y este capítulo lo dedicaremos íntegramente a estudiar su
creación, manejo y posibilidades.
Pasando ya
a la práctica, un ejemplo de cómo crear una ventana de imagen podría ser el
siguiente:
/window –p
@miventana 10 10 200 200 @miventana
Esta línea
de código hará que se cree una ventana de imagen en blanco de nombre @miventana
(recuerde que las ventanas personalizadas siempre llevan en su nombre el
prefijo “@”), en las coordinas x (10) y (10), de 200 pixels de
largo por 200 pixels de alto, y que además use los menús popup que le
especifiquemos bajo la cláusula “menu
@miventana” en la sección “Remotes”
del editor de mIRC. Hasta aquí no hacemos más que repetir lo que se explico en
el capítulo anterior, la diferencia es que esta es una ventana de imagen y nos
permitirá aplicar tratamientos y procesos gráficos.
Una vez
creada la ventana ahora lo importante, y lo que la diferencia del resto, son
los comandos u modificadores que podemos emplear en ellas. Con los comandos que
a continuación se explicarán el lector será capaz de dibujar figuras, puntos y
líneas, poner texto en cualquier lugar y mostrar imágenes .bmp también en cualquier posición dentro de la ventana.
Antes de
empezar el tema, expliquemos a que nos referiremos cuando empleemos la palabra
“rectángulo”, dicha especificación serán 4 números que determinan
la posición y el tamaño de la ventana. Los dos primeros aluden a la posición en
que se encontrará su esquina superior izquierda, el primero (x) será la
distancia en pixels desde el borde izquierdo de la pantalla, el segundo (y) es
la distancia desde el borde superior. Los dos siguientes números definen el
tamaño de nuestra ventana: ancho (w) y alto (h), siempre usando el píxel como
unidad de medida, por lo cual las dimensiones reales dependerán del tamaño y
definición de nuestro monitor.
Por
ejemplo, un rectángulo cuya esquina esté en las coordenadas x = 30, y = 50, y
mida 100 pixels de largo por 120 de alto lo expresaremos como: 30 50 100 120.
Este
concepto es fundamental para el entendimiento de las siguientes secciones.
Comandos
para
Estos
comandos, igual que pasaba con los de las ventanas personalizadas
“normales” se han de usar después de haber creado la ventana
y pueden ser insertados en cualquier Alias, Popup o Remote que declaremos.
·
/drawdot [-hnri] @nombre
<color> <tamaño> <x y> [x y …]
Dibuja un
punto del color indicado (del 0-15) con un diámetro (tamaño en pixels) y en las
coordenadas x y dentro de la ventana de imagen.
No
confundir estas coordenadas x e y con las coordenadas equivalentes que usamos
al crear la ventana, en este caso aluden a la posición en la que se dibujará el
punto dentro de la misma. Corresponden a una escala en pixels que también parte
de la esquina superior izquierda de la ventana creada, pero cuyos ejes son
ahora el borde superior e izquierda de la misma (no de la pantalla).
Es decir,
que si dibujamos un punto en las coordenadas x(0) y(0) tendremos un punto cuyo
centro estará en la misma esquina superior izquierda de la ventana de imagen.
Se pueden
especificar múltiples coordenadas “x,y” en la misma orden, esto es,
si queremos dibujar varios puntos con el mismo comando.
Los
parámetros opcionales [-hnri] sirven para lo siguiente:
-h: Hará que el icono de la ventana parpadee en el momento
de dibujarse el punto si se encuentra minimizada.
-n: Hace que la ventana no se
actualice inmediatamente. Esto podría ser útil si antes de dibujar el punto
queremos cambiar el color del fondo o algo similar, aunque realmente se
conseguiría más fácilmente poniendo el comando que cambiará el color de fondo
antes que el que dibujará el punto así que este parámetro rara vez lo
usaremos…
-r: Indica que el <color>
esta especificado en formato RGB(Rojo,Verde,Azul), en caso de que usemos este
parámetro tendremos que el identificador: $rgb(rojo,verde,azul),
por ejemplo: $rgb(0,200,100).
-i: Dibujará el punto en modo
inverso (color blanco y fondo negro).
Ejemplo:
/drawdot
–r @miventana $rgb(255,23,45) 5 10 10 12 10
Este ejemplo dibujará 2 puntos en la ventana @miventana
del color definido por el valor $rgb(255,23,45), con un diámetro de 5 pixels.
·
/drawline [-hnri] @nombre
<color> <tamaño> <x y> <x y> [x y…]
Dibuja una
línea de <color>, que tenga un grosor de <tamaño> pixels y que vaya
desde las primeras coordenadas <x y> que especifiquemos hasta las
segundas <x y>. Se pueden especificar opcionalmente más parámetros <x
y> para hacer una línea que pase por los puntos definidos. Los parámetros
[-hnri] hacen exactamente lo mismo que en el comando drawdot, y de hecho
comprobaremos que a casi todos los comandos de modificación de ventanas de
imagen se les puede aplicar estos parámemtros.
Ejemplo:
/drawline @miventana 4 10 20 0 20
100
Este
ejemplo dibujará una línea en @miventana de color rojo (4) y de grosor 10
pixels, que irá desde las coordenadas x(20) y(0) hasta x(20) y(100). Es decir,
será una línea vertical.
·
/drawrect [-hnrifec] @nombre
<color> <grosor> <x y w h> [x y w h…]
Dibuja un
rectangulo de color <color> cuyo borde tenga un grosor de <grosor>
pixels, cuya esquina superior izquierda se encuentre en las coordenadas <x
y> especificadas, y que mida <w> pixels de largo por <h> de ato.
Lógicamente si incluimos un segundo juego de parámetros [x y w h] creará un
segundo rectángulo con esas características. Los parámetros [-hrni] una vez más
son los mismos que los explicados en el comando drawdot, los otros sirven para
lo siguiente:
-f: Una vez dibujado el rectángulo
lo rellena con el color que hayamos especificado para el borde, si no
especificamos este parámetro el rectángulo por dentro será del color del fondo.
-e: Dibuja una elipse en lugar de
un rectángulo… ¿qué como dibuja una elipse si lo que le estamos dando son
las coordenadas de un rectángulo?. Pues simplemente dibuja la elipse que cabría
perfectamente dentro de ese rectángulo que especificamos con <x y w h>.
-c: Hace que el borde del
rectángulo sea del color que le hemos especificado, pero transparente.
Ejemplo:
/drawrect
–fr @miventana $rgb(1,2,3) 10 30 30 200 200
Este ejemplo dibujará un rectángulo de color $rb(1,2,3),
ya que le hemos especificado el parámetro –r, que estará además relleno
con ese color, y su esquina superior izquierda estará en la posición x(30)
y(30) y medirá 200 pixels de largo por 200 de alto.
·
/drawfill
[-hnris] @nombre <color1> <color2> <x y> [archivo.bmp]
Rellenará
el area en el que esté el punto <x y> con el color >color1>.
Podemos especificar que en vez de rellenas el área con un color se haga con una
imagen BMP que tengamos. La imagen
ha de ser del tamaño 8x8 pixels, si tiene cualquier otro tamaño no funcionará.
Los parámetros [-hnri] cumplen la misma función que en los comandos anteriores.
La función
del parámetro <color2> depende de si especificamos o no el parámetro
[-s]. Si ponemos –s, el valor de <color2> indicará el color que
deberá ser sustituido por <color1>. Si no incluimos el –s el valor
que le demos a <color2> será el color ante el cual el relleno deberá
parar.
Este
comando resulta un poco complicado de explicar, así que lo mejor será que se
fije en el siguiente ejemplo:
Ejemplo:
/drawfill @miventana 1 4 30 30
c:\imagen.bmp
Este
ejemplo lo que hará es que usando la imagen imagen.bmp (cuyo tamaño es de 8x8
pixels) y desde la posición x(30) y(30) pegará múltiples copias de esa imagen
para rellenar esa zona, parando ante cualquier línea de color rojo, si hubiese
alguna.
·
/drawtext [hnrpboc] @nombre
<color1> [color2] [Tipo_letra] [Tamaño_letra] <x y [w h]> <texto>
Inserta un
texto de color <color1> en la ventana que especifiquemos y en las
coordenadas <x y>. Podemos añadir opcionalmente la longitud y altura del
texto (parámetros [w h], esto hará que
si el texto que escribimos es demasiado largo y no cabe en el rectángulo que
hemos indicado con [w h] aparezca solo el texto que quepa. El parámetro
<color2> es opcional y sirve para especificar el color el color de fondo
del texto que escribamos. Los parámetros [Tipo_letra] y [Tamaño_letra] también
son opcionales e indican el nombre del tipo de letra a usar (escribiendo todo
junto sin espacios) y su tamaño en puntos. [-hnr] tiene la misma función que en
anteriores comandos. En cuanto a los otros parámetros su significado es:
-p: Nos
permite el uso de controles de color (ctrl + k), negrita (ctrl + b) y subrayado
(ctrl + u) dentro del texto.
-b: Indica que se va a especificar
el parámetro [color2] como color de fondo para el texto. Si no usamos este
parámetro, [color2] deberá ser omitido.
-o: Indica que el tipo de letra
debe ser negrita.
-c: Indica que los parámetros
opcionales [w h] van a ser especificados.
Ejemplo:
/drawtext
–b @miventana 4 9 MsSansSerif 14 30 40 Probando el comando drawtext
Este ejemplo pondrá en pantalla la cadena de caracteres
“Probando el comando drawtext” de color rojo (4) y sobre un fondo
verde claro (9), con el tipo de letra Ms Sans Serif (recuerde que en el comando
se ha de escribir el nombre del tipo de letra todo junto, sin espacios), de un
tamaño de 14 puntos.
·
/drawcopy [-ihnt] @nombre [color]
<x y w h> @destino <x y [w h]>
Copia
parte de una ventana de imagen a otra parte de la ventana o a otra ventana. Si
especificamos los parámetros [w h] la sección de la imagen que hayamos copiado
será ensanchada / estrechada a ese tamaño (el especificado por [w h] en la
ventana de destino. Fijese que si lo que quiere es copiar un trozo de una
imagen desde una sección de una ventana a otra sección de la misma ventana,
@nombre y @destino serán la misma ventana. Los parámetros [-ihn] son los mismos
que explicamosen /drawdot, y en cuanto a –t
indica que hemos especificado el valor [color] como un valor $rgb equivalente al color que queremos
que sea transparente en la imagen que hayamos copiado.
Ejemplo:
/drawcopy @miventana 0 0 100 100 @miventana2
10 10
Este
ejemplo copiará el contenido de la ventana (@miventana contenido desde x(0)
y(0) hasta w(100) h(100) a @miventana2 en la posición x(10) y(10).
·
/drawsave
@nombre <archivo.bmp>
Guarda la
imagen de fondo actual de la ventana @nombre como un archivo de nombre
<archivo.bmp>.
Ejemplo:
/drawsave @miventana ventanita.bmp
Este
ejemplo guardará la imagen de fondo que tengamos en la ventana @miventana en un
fichero con el nombre ventanita.bmp.
·
/drawscroll [-hn] @nombre <x>
<y> <x y w h>
Desplaza
la región de la ventana comprendido en el rectángulo <x y w h> (recuerde:
x –posición x de la esquina superior izquierda, y –posición y de la
esquina superior izquierda, w –longitud del rectángulo, h –altitud
del rectángulo, todo en pixels) <x> pixels en el eje X y <y> pixels
en el eje Y. Los valores de <x> e <y> pueden ser un número negativo
si queremos indicar que la región se desplace hacia la izquierda o hacia abajo respectivamente. [-hn] son los
mismos que en el comando /drawdot.
Ejemplo:
/drawscroll @miventana 10 20 50 50
200 200
Este
ejemplo desplazará la región de la ventana @miventana contenida en el
rectángulo “50 50 200 200” 10 pixels hacia la derecha y 20 hacia
arriba.
·
/drawpic
[-ihntsc] @nombre [color] <x y [w h]> [x y w h] <archivo.bmp>
Y llegamos
sin duda al comando más útil de todos los de las ventanas de imagen, con este
comando podremos cargar una imagen cualquiera <archivo.bmp> en una
ventana, en las coordenadas <x y>. Sin indicamos la longitud y la altitud
[w h] la imagen será ensanchada/estrechada a ese tamaño. El parámetro opcional
[x y w h] lo usaremos para indicar qué parte del archivo <archivo.bmp>
queremos mostrar, util por si tenemos un bmp grande con varias imágenes y
queremos mostrar solo una de ellas. [-ihn] corresponden a los parámetros
explicados en /drawdot. Otros parámetros que acepta este comando son:
-t: Indica que hemos especificado
el valor [color] con el formato $rgb(N,N,N) donde N es un número comprendido
entre 0 y 255, y ese color será tratado como transparente en el archivo que
queramos mostrar.
-s: Indica que hemos especificado
los parámetros [w h] para ensanchar/estrechar la imagen.
-c: Indica que la imagen debe ser
puesta en la memoria caché, esto hace que si en la misma sesión quisiéramos
volver a hacer uso de esa imagen, el tiempo de carga sería muy inferior. La
cache pude almacenar hasta un máximo de 30 imágenes, a partir de ese número
empezara a reemplazarse las que lleven más tiempo sin usarse por las más
nuevas.
Ejemplo:
/drawpic
–t @miventana $rgb(0,0,0) 0 0 c:\ventanita.bmp
Este ejemplo mostrará la imagen c:\ventanita.bmp en la
ventana @miventana en las coordenadas x(0) y(0) y las regiones de la imagen de
color $rgb(0,0,0) (negro en este caso) se mostrarán como transparentes (se verá
el fondo de la ventana a través de esas regiones).
IDENTIFICADORES DE
VENTANAS DE IMAGEN.-
·
$mouse.<propiedad>
$mouse.win:
Devuelve el nombre de la ventana sobre la que se encuentra el ratón.
$mouse.x:
Devuelve la posición x, relativa a la ventana de imagen, del ratón.
$mouse.y:
Devuelve la posición y, relativa a la ventana de imagen, del ratón.
$mouse.mx:
Devuelve la posición x relativa a la ventana principal del mIRC.
$mouse.my:
Devuelve la posición y relativa a la ventana principal del mIRC.
$mouse.dx:
Devuelve la posición x relativa al escritorio.
$mouse.dy:
Devuelve la posición y relativa al escritorio.
·
$rgb(nº,nº.nº)
Especifica
un color con detalles, es decir, que en vez de usar el color con un número del
0 al 15, lo indicamos suministrando los valores de rojo, verde y azul del
color(RGB), si no controlas el RGB no te preocupes, siempre puedes poner el
color en el formato habitual (número del 0 al 15).
·
$getdot(@nombre,x,y)
Devuelve
el valor RGB del color del punto definido por los parámetros “x” e
“y”.
·
$inrect(x,y,x2,y2,w,h)
Devuelve $true si el punto definido por x,y está
dentro del rectángulo definido por x2,y2,w,h. En caso contrario devuelve $false.
·
$height(texto,tipo_letra,tamaño)
Devuelve
la altura en pixels del texto especificado y con un tipo de letra y tamaño.
Recuerda que el tipo de letra lo has de escribir todo junto, por ejemplo:
TimesNewRoman.
·
$pic(archivo.bmp)
Este
identificador se puede usar de 3 formas:
$pic(archivo.bmp).size: Devuelve el tamaño del .bmp especificado.
$pic(archivo.bmp).height: Devuelve el tamaño del .bmp
especificado.
$pic(archivo.bmp).width: Devuelve el tamaño del .bmp
especificado.
·
$width(texto,tipo_letra,tamaño,B,C)
Devuelve
la longitud en pixels del texto especificado y con un tipo de letra y tamaño.
Si el parámetro “B” es diferente de “0” se tomará el
tipo de letra en negrita. Si el parámetro “C” es diferente de
“0” se ignorarán el espacio ocupado por los controles de color,
negrita y subrayado.
EVENTOS Y REMOTES EN LAS VENTANAS DE
IMAGEN.-
Con las
ventanas de imagen podemos usar los mismos eventos y manejo de remotes que
empleábamos en el resto de ventanas personalizadas, como por ejemplo el evento ON INPUT (si la ventana contaba con una
editbox) o los eventos ON OPEN y ON CLOSE que se ejecutaban cuando
abríamos o cerrábamos las ventana en cuestión.
En lo que
se refiere a las ventanas de imagen, no existe ningún evento remoto para ellas
en especial, seguiremos usando por tanto los ya vistos, pero eso sí, a la hora
de definir los menús Popup dentro de la sección Remotes para una ventana de
imagen, sí que podrá incluir nuevas funciones que ayudarán a sus ventanas a ser
un poco más útiles y sofisticadas.
Por
ejemplo, usted podrá hacer que al pulsar en cierta región de una imgen pase una
cosa, y al pulsar en otro región pase otra cosa. Vayamos por partes, como he
dicho antes la nueva funcionalidad de las ventanas de imagen se implementará
donde en las ventanas personalizadas normales implementábamos e menú Popup. Por
ejemplo si creamos la siguiente ventana:
/windows
–p @otraventana 100 100 100 100 @otraventana
Y queremos
definir su menu popup, escribiremos en la sección Remotes:
menu @otraventana {
}
Y aquí es
donde empiezan los cambios. Por supuesto, es perfectamente posible especificar
el menú popup que queremos para esa ventana dentro de los corchetes pero eso
deberá ser puesto “al final”. Y me explico, antes de escribir el
menú popup podremos incluir una serie de “gatillos” que saltarán
cuando ocurra cierto evento. A continuación se detallan cuales son estos
“gatillos” que usted podrá especificar dentro de la cláusula
“menu @otraventana”:
mouse:
Saltará cuando el ratón se mueva por encima de la ventana.
sclick:
Saltará cuando el usuario haga clic con el botón izquierdo sobre la ventana.
dclick:
Saltará cuando el usuario haga clic con el botón derecho sobre la ventana.
uclick:
Saltará cuando el usuario suelte el botón izquierdo del ratón.
lbclick:
Saltará cuando se haga un clic sobre un objeto de una listbox.
leave: Saltará
cuando el ratón salga de la ventana (se mueva fuera de la ventana). Cuando
usemos este gatillo, podemos usar el identificador $leftwin que nos devolverá
el nombre de la ventana de la que salió el ratón.
drop:
Saltará cuando el usuario haga clic con botón izquierdo sobre la ventana,
mantenga el botón pulsado, mueva el ratón y después lo suelte en otro lugar.
Vamos a presentar un ejemplo de cómo podría usar estos
gatillos para que quede todo esto un poco más claro:
menu @otraventana {
mouse: /echo –s El ratón se ha movido hasta $mouse.x
$mouse.y
sclick: /echo –s Ha hecho clic en las coordinas
$mouse.x , $mouse.y
dclick: /echo –s Ha hecho doble clic sobre las
coordenadas $mouse.x , $mouse.y
uclick: /echo –s Ha soltado el botón en las
coordinas $mouse.x , $mouse.y
leave:{
echo –s Ha salido de la ventana $leftwin
window
–c $leftwin
}
Popup1
.sub-popup1:/comando1
.sub-popup2:/comando2
Popup2:/comando3
-
Popup3:/comando4
}
Ahora
fíjese en el código que acaba de leer. Hay unas cosas importantes que debería
de quedar claras con ese ejemplo:
·
Como
ha visto los gatillos de una ventana de imagen se especifican dentro de la
cláusula “menu @otraventana” y siempre antes que el menú popup.
·
El
menú popup de la ventana se especifica, normalmente, de a misma forma que en
las ventanas personalizadas normales (después de los “gatillos”).
·
Se
puede hacer uso de los identificadores $mouse.x
y $mouse.y para hallar las
coordenadas en la que se encuentra situado el ratón (siempre relativas a la
ventana de imagen).
·
Se
pueden incluir varios comandos para un mismo gatillo usando llaves { } como
hemos hecho en el ejemplo del gatillo “leave”.
Aunque le
parezca increíble, con lo que se ha explicado hasta ahora ya se puede hacer
cualquier cosa que haya visto en cualquier script que tenga que ver con
ventanas de imagen. El uso de estas ventanas no es sencillo, y se hace
verdaderamente muy pesado, así que sería conveniente que el lector se asegurará
de si en realidad va a valer la pena el hacer una ventana de imagen para algo que
quizás con un simple menú popup podría solucionar. De cualquier forma a
continuación se va a exponer y explicar un ejemplo que aunque tenga una escasa
utilidad servirá para que pueda ver todos estos comandos e identificadores en
acción. En este ejemplo se da por hecho que los conocimientos del lector sobre
Aliases, Remotes y Popups son suficientes.
Ejemplo 1: Crear una imagen interactiva.
Para ello
necesitaremos, primeramente, una imagen, usaremos la siguiente:

Esta en
concreto tiene unas dimensiones de 100x73 pixels, este valor nos será útil
más adelante, se supondrá que la imagen se encuentra en c:\pregunta.bmp. Si
lo desea pude bajarla en formato BMP
desde aquí.
Ahora,
como ya habrá adivinado, lo que haremos será transformar esa imagen en una
ventana de imagen y hacer que si el usuario pulsa el ratón sobre
“SI” se cierre el mIRC y, si por el contrario, pulsa sobre
“NO”, se cierre la ventana de imagen y que no ocurra nada más. Por
lo tanto lo primero será crear un alias que abra la ventana de imagen y cargue
en ella pregunta.bmp. Copiaremos lo siguiente en la sección
“Aliases” del mIRC:
/pregunta {
set
%longitud $pic(c:\pregunta.bmp).width
set
%altitud $pic(c:\pregunta.bmp).height
/wndow
–p +b @pregunta 200 200 %longitud %altitud @pregunta
drawpic
–c @pregunta 0 0 c:\pregunta.bmp
}
Hasta aqui
lo que hemos hecho es sencillo, declaramos el alias “/pregunta”. Y
lo que hará ese alias es guardar la longitud en pixels de la imagen en la
variable %longitud, después guardará la altitud en pixelsde la imagen en la
variable %altitud. Seguidamente se declara la ventana de imagen @pregunta,
usando el parámetro +b para que no
tenga barra de título ni botones de minimizar, maximizar y cerrar. Hemos usado
las variables %longitud y %altitud para que la ventana sea exactamente del
mismo tamaño que la imagen, de esa forma esta ocupará toda la ventana y quedará
bien (sin ningún espacio en blanco).
Después
mediante el comando drawpic hemos cargado la imagen en la ventana que hemos
creado y hemos metido esa imagen en la cache (mediante el [-c]) para que si la
volvemos a utilizar en la misma sesión se cargara rapidamente.
Ahora
iremos a remotes para definir el “menu @pregunta” y el gatillo que
hará que cuando hagamos un clic sobre “SI”, se cierre el mIRC, y
que cuando hagamos un clic “NO”, se cierre la ventana. Copie lo
siguiente en los “Remotes”:
menu
@pregunta {
sclick:{
if
(($mouse.x > 17) && ($mouse.x < 35) && ($mouse.y > 42)
&& ($mouse.y < 63)) { exit }
elseif
(($mouse.x > 63) && ($mouse.x < 86) && ($mouse.y > 41)
&& ($mouse.y < 63)) { window –c @pregunta }
else { /echo –s Haz click sobre “SI” o
sobre “NO” ! }
}
Información de la imagen
.¿Cuánto ocupa?:/echo –s La imagen ocupa
$pic(c:\pregunta.bmp).size bytes
-
Cerrar ventana:/window –c @pregunta
}
Esta es la
sección más interesante del código, y aquí se ha mostrado como se hará siempre
que queramos hacer que ocurran cosas diferentes según en qué parte de la región
de una imagen pulsemos. Para ello se ha recurrido al gatillo “sclick” que como se explico antes
salta cuando el usuario hace un clic sobre la ventana. Lo que pasará en este
caso es que el script comprobará donde ha hecho el clic, y dependiendo de donde
sea, ejecutará unos comandos u otros. Pero al mIRC no le podemos decir “si el usuario clickea el SI has
esto y lo otro”, al mIRC le
tendremos que decir “si el usuario hace clic en el rectángulo x y w
h, entonces ejecuta estos
comandos”.
Y eso
hemos hecho, primero hemos abierto la imagen en un programa de diseño, el Saint
Windows basta, y moviendo el ratón sobre la imagen nos aparece en la esquina
inferior derecha del programa las coordinas por las que estamos moviendo el
ratón, así pues apuntamos las coordenadas que definen el rectángulo que contiene
la palabra “SI”, en este caso el rectando tendría su esquina
superior izquierda en x(17) y(42) y su esquina inferior derecha en x(35) y(63).
Entonces le hemos dicho al mIRC:
“si cuando el usuario hace clic el ratón está entre las coordenadas x(17(
x(35) y además está entre las coordenadas y(42) e y(63)” eso
necesariamente significa que el usuario ha hecho clic sobre la palabra
“SI” y por lo tanto ejecutaremos el comando exit, que cierra el
mIRC, no hace falta que digamos antes que cierre la ventana de imagen puesto
que al cerrarse el mIRC se cierran
automáticamente todas las ventanas que haya creadas. Análogamente se ha seguido
el mismo procedimiento para detectar si el usuario hace clic sobre
“NO” y en tal caso hacemos que se cierre la ventana de imagen y no
pasa nada más. Por último le hemos dicho que si e clic no se produce ni sobre
la palabra “SI” ni sobre la palabra “NO” que nos salga
un mensaje en la ventana de estado indicándonos donde tenemos que pulsar.
Visto eso,
el resto es sencillamente e menú que aparecerá al pulsar botón derecho sobre la
ventana, que se especifica, como ya sabe, después de el/los gatillos que
hayamos empleado.