>> ALTAVOZ 1: Ahora vamos a escribir un programa que interactúa de alguna manera con el ratón.
En particular, vamos a crear instancias o crear una ventana.
Y luego vamos a escuchar, por así decirlo, dentro de esa ventana de clics del ratón.
Y tan pronto como se detecta un clic del ratón, vamos a imprimir con el printf
coordenadas x coma y de ese ratón haga clic, con relación a la ventana.
>> Aquí vamos.
Primero vamos a incluir gevents.h, que es otro archivo de cabecera en el Stanford
biblioteca portátil que se refiere a eventos gráficos.
Supongamos también incluyen gwindow.h, que contiene funciones relacionadas a Windows.
Ahora vamos a declarar principal en la forma habitual.
>> Y ahora vamos a instanciar esa ventana.
Gwindow -
lo llamaremos ventana -
iguales newGwindow.
Y voy a especificar un tanto arbitrariamente un ancho de 320 píxeles y una altura de
240 píxeles.
>> Ahora tenemos que proceder a escuchar para eventos de ratón, por lo que
hablar, dentro de esa ventana.
Ahora, los eventos pueden incluir clics o arrastra o movimientos.
Pero por ahora nos centraremos sólo en los clics.
Voy a inducir intencionalmente un bucle infinito con una construcción, mientras que,
simplemente para que este programa se ejecuta para siempre, o al menos hasta que haga clic en el
X en la esquina superior derecha.
>> Para ello, vamos a hacer mientras que la verdadera.
Y a continuación, en el interior de dicho bucle, lets primer cheque para el
ratón evento de la siguiente manera.
Nos declararemos un GEvent, por así decirlo.
>> Llamaremos al evento variable.
Y vamos a almacenar en la que el valor de GetNextEvent regresar, pasando
en una constante especial, que por convención se escribe en mayúsculas,
llamado mouse_event.
En otras palabras, en algún lugar en este Stanford biblioteca portátil, hay un
constante llamada MOUSE_CLICED.
Y hay una función definida que es llamado GetNextEvent, cuyo propósito en la
la vida es hacer exactamente eso.
Escuche, y luego, cuando se oye uno, devuelve el siguiente evento que es
sido provocada por el ratón del usuario.
>> Ahora vamos a ver si ese evento es nulo.
Porque no es nulo, y que somos nosotros algo realmente oído desde el
el ratón del usuario, vamos a proceder para comprobar ahora qué tipo
de evento que era.
Si getEventType, que pasa un evento como argumento, es igual a los iguales
MOUSE_CLICKED, que pasa a ser un tipo específico de eventos, lo que es justo
otra constante declarada en la Biblioteca portátil de Stanford.
Ahora, como prometió, ahora vamos a imprimir el coordenadas de ese clic del ratón.
Printf "% .0 f.
>> En otras palabras, voy a imprimir un valor de punto flotante.
Pero yo no quiero ver nada después del punto decimal.
Así que voy a especificar 0.0.
Coma, 0,0% f para la coordenada así.
Backslash n Cierre de comillas.
>> Y ahora vamos a la coordenada x de ese evento.
Esa es la coordenada x del clic del ratón.
Y luego vamos a obtener y del evento, que es la coordenada
del clic del ratón.
>> Ahora vamos a guardar, compilar, y ejecutar este programa.
Y cuando lo haga, debe ser el caso que no importa dónde hago clic en
los confines de este 320 por 240 píxeles ventana, debo entonces ver en mi
ventana de la consola los x comas coordenadas de donde hice clic.
Haga clic.
. / Clic.
Y ahí está esa ventana predijimos.
>> Ahora déjame clic aproximadamente en la parte superior esquina a mano izquierda de la ventana.
En mi pantalla de la consola, veo que suceder que hacer clic en la coordenada x de siete
y coordenada y siete.
Ahora vamos a hacer clic más o menos en la parte inferior esquina derecha de la ventana.
Y me parece que han hecho clic en pixel de coordenadas 314, 229.
>> Ahora vamos a hacer la esquina inferior izquierda.
Y veo a 6, 233.
Y la esquina superior derecha, 305, 4.
>> En otras palabras, parece ser el caso que la esquina superior izquierda de
nuestra ventana es 0, 0.
Y de la esquina inferior derecha de mi ventana es de 320, 240.
En otras palabras, yo he visto precisamente esos valores, tuvieron que acabo de
perfectamente alineados mi cursor del ratón en cada una de esas esquinas.
Esto es cierto en general en gráfica de programación, si el uso de la
Biblioteca portátil de Stanford o la mayoría de cualquier sí, por lo que representamos la parte superior
esquina como 0, 0, y la parte inferior esquina derecha como la coma ancho
de altura, con números positivos, incluso aunque es abajo ya la derecha.