1 00:00:00,000 --> 00:00:21,920 Vale, pues entonces, pues ahora ya una vez que hemos visto que esto, EventHandler, es una interfaz funcional, pues ¿para qué vamos a hacer la clase con todo este rollo? 2 00:00:21,920 --> 00:00:22,920 hacer aquí el new 3 00:00:22,920 --> 00:00:26,059 vamos a, en lugar de pasarle 4 00:00:26,059 --> 00:00:27,179 el objeto de esta manera 5 00:00:27,179 --> 00:00:30,000 vamos a pasárselo de la otra manera 6 00:00:30,000 --> 00:00:31,440 que sabemos instanciar 7 00:00:31,440 --> 00:00:34,399 objetos de interfaces funcionales 8 00:00:34,399 --> 00:00:42,439 que de hecho 9 00:00:42,439 --> 00:00:44,679 cuando uno va 10 00:00:44,679 --> 00:00:46,520 mirando los métodos es que la propia ayuda 11 00:00:46,520 --> 00:00:49,060 te lo dice 12 00:00:49,060 --> 00:00:55,140 cuando tú 13 00:00:55,140 --> 00:00:56,299 coges este método 14 00:00:56,299 --> 00:00:58,820 cuando te aparece esto 15 00:00:58,820 --> 00:01:00,960 pues tú aquí ya estás viendo, te dice que esto es una 16 00:01:00,960 --> 00:01:02,920 interfaz funcional, entonces tú ya puedes 17 00:01:02,920 --> 00:01:04,719 deducir dónde puedes meter la ANDA, 18 00:01:04,799 --> 00:01:06,099 dónde puedes no meterla, etc. 19 00:01:07,280 --> 00:01:09,140 Vale, pues entonces, a ver. 20 00:01:17,670 --> 00:01:18,689 Se hace gracia todo hoy. 21 00:01:21,689 --> 00:01:22,590 Ruth, vale. 22 00:01:23,310 --> 00:01:23,810 Pues a ver. 23 00:01:25,090 --> 00:01:26,590 Aquí hay que poner una ANDA 24 00:01:26,590 --> 00:01:30,689 acorde en sintaxis 25 00:01:30,689 --> 00:01:32,689 a la interfaz funcional que tenemos que implementar, 26 00:01:32,769 --> 00:01:35,129 que es Iben Handler. Entonces, Iben Handler, 27 00:01:35,750 --> 00:01:36,909 su método abstracto, 28 00:01:37,769 --> 00:01:38,730 tiene un 29 00:01:38,730 --> 00:01:40,689 parámetro de entrada. Pues es lo que hay que 30 00:01:40,689 --> 00:01:42,890 poner en la lambda, las lambdas 31 00:01:42,890 --> 00:01:44,670 pueden no tener parámetros, tener uno o tener 32 00:01:44,670 --> 00:01:46,930 mil, tenemos que poner el que encaje 33 00:01:46,930 --> 00:01:48,829 con la interfaz funcional 34 00:01:48,829 --> 00:01:50,010 que hay que implementar aquí 35 00:01:50,010 --> 00:01:52,829 aquí hay que implementar una interfaz funcional de tipo 36 00:01:52,829 --> 00:01:54,810 event handler, pues entonces tenemos 37 00:01:54,810 --> 00:01:57,049 que saber el método abstracto 38 00:01:57,049 --> 00:01:58,590 de event handler, que es el handle 39 00:01:58,590 --> 00:02:00,549 ¿qué estructura tiene? 40 00:02:01,370 --> 00:02:02,709 pues la estructura que tiene 41 00:02:02,709 --> 00:02:04,670 es que tiene que recibir un 42 00:02:04,670 --> 00:02:06,609 parámetro, pues venga 43 00:02:06,609 --> 00:02:08,569 ala, es este 44 00:02:08,569 --> 00:02:10,409 el e 45 00:02:10,409 --> 00:02:12,530 y ahora 46 00:02:12,530 --> 00:02:15,550 el código 47 00:02:15,550 --> 00:02:18,689 de la implementación 48 00:02:18,689 --> 00:02:20,030 del método lo pongo aquí 49 00:02:20,030 --> 00:02:22,169 este es el event 50 00:02:22,169 --> 00:02:24,289 lo he llamado a propósito 51 00:02:24,289 --> 00:02:26,569 para que no penséis que tiene que llamar event a propósito 52 00:02:26,569 --> 00:02:27,990 o sea, tiene que llamar como se llama x 53 00:02:27,990 --> 00:02:29,669 como se llama no sé qué, esto representa 54 00:02:29,669 --> 00:02:32,370 el parámetro de entrada del método abstracto 55 00:02:32,370 --> 00:02:34,750 aquí se llama event 56 00:02:34,750 --> 00:02:35,669 pero da igual 57 00:02:35,669 --> 00:02:38,710 lo puedo llamar aquí h y poner aquí h y aquí h 58 00:02:38,710 --> 00:02:40,789 eso es de programación de la primera semana 59 00:02:40,789 --> 00:02:42,770 Vale, pues Milanda 60 00:02:42,770 --> 00:02:44,830 Recibe un parámetro de entrada 61 00:02:44,830 --> 00:02:47,550 Y aquí pongo la implementación del método 62 00:02:47,550 --> 00:02:49,569 Que es esta 63 00:02:49,569 --> 00:02:51,310 Pues ala 64 00:02:51,310 --> 00:02:52,590 Venga, esto mismo 65 00:02:52,590 --> 00:02:55,870 Esto mismo, esta es la implementación de mi método 66 00:02:55,870 --> 00:02:57,830 Pues la puedo plantar 67 00:02:57,830 --> 00:02:58,569 Aquí tan feliz 68 00:02:58,569 --> 00:03:05,120 Lógicamente event, ala no es event 69 00:03:05,120 --> 00:03:05,719 Es e 70 00:03:05,719 --> 00:03:09,240 Porque lo he llamado e a propósito para que no nos aprendamos 71 00:03:09,240 --> 00:03:10,159 Las cosas de memoria 72 00:03:10,159 --> 00:03:12,060 Ala 73 00:03:12,060 --> 00:03:13,780 Pues ya la tengo 74 00:03:13,780 --> 00:03:18,120 ya tengo una instancia 75 00:03:18,120 --> 00:03:19,620 esto es haber hecho un new 76 00:03:19,620 --> 00:03:22,340 de un objeto que implementa el event handler 77 00:03:22,340 --> 00:03:24,360 siendo su implementación 78 00:03:24,360 --> 00:03:25,800 del método 79 00:03:25,800 --> 00:03:27,199 handle este 80 00:03:27,199 --> 00:03:29,759 con la ventaja que me he encontrado 81 00:03:29,759 --> 00:03:32,000 añadida, la maravillosa ventaja 82 00:03:32,000 --> 00:03:34,080 de que al haberlo declarado 83 00:03:34,080 --> 00:03:36,159 aquí dentro, el label es visible 84 00:03:36,159 --> 00:03:36,960 porque está aquí 85 00:03:36,960 --> 00:03:39,180 que esa es la principal ventaja 86 00:03:39,180 --> 00:03:41,379 que el label es visible 87 00:03:41,379 --> 00:03:42,800 ¿vale? 88 00:03:42,800 --> 00:03:48,939 y ya está, este código es el que he puesto aquí 89 00:03:48,939 --> 00:03:50,080 tal cual clavado 90 00:03:50,080 --> 00:03:59,009 pues entonces esto 91 00:03:59,009 --> 00:04:01,270 nos funcionará, suponemos 92 00:04:01,270 --> 00:04:08,810 y si, nos funciona 93 00:04:08,810 --> 00:04:25,490 bueno 94 00:04:25,490 --> 00:04:27,610 punto uno hecho 95 00:04:27,610 --> 00:04:29,810 punto dos 96 00:04:29,810 --> 00:04:31,870 otro evento del panel 97 00:04:31,870 --> 00:04:33,829 cuando demos una tecla 98 00:04:33,829 --> 00:04:37,329 entonces tendremos que capturar 99 00:04:37,329 --> 00:04:39,709 un evento del tipo key event 100 00:04:39,709 --> 00:04:42,110 hay que 101 00:04:42,110 --> 00:04:43,910 añadir un botón al panel 102 00:04:43,910 --> 00:04:45,610 donde 103 00:04:45,610 --> 00:04:48,230 en la posición actual en la que 104 00:04:48,230 --> 00:04:50,170 esté el ratón, eso ya es raro 105 00:04:50,170 --> 00:04:52,389 porque el texto del botón 106 00:04:52,389 --> 00:04:54,269 es fácil de sacar, el texto del botón 107 00:04:54,269 --> 00:04:55,930 dice la tecla pulsada 108 00:04:55,930 --> 00:04:58,029 pero la tecla pulsada lo puedo sacar de Keyvent 109 00:04:58,029 --> 00:04:58,790 casi seguro 110 00:04:58,790 --> 00:05:01,569 pero la posición donde esté el ratón 111 00:05:01,569 --> 00:05:04,250 esa de donde la puedo sacar, no lo sé 112 00:05:04,250 --> 00:05:06,449 tendremos que pensar alguna estrategia 113 00:05:06,449 --> 00:05:08,470 por lo pronto vamos a ir haciendo este evento 114 00:05:08,470 --> 00:05:09,889 a ver 115 00:05:09,889 --> 00:05:11,769 Keyvent 116 00:05:11,769 --> 00:05:40,810 Pues venga, ahora mi panel root, le vamos a hacer un set on, el evento pulsar tecla, pues será uno de estos tres, pues keypress será, será este, cuál va a ser, vale, entonces voy a ver si también es event handler, el tipo de objeto que tengo que pasar, que lo será, sí, es un event handler también, 117 00:05:40,810 --> 00:05:43,250 ya me sé de antes que el event handler 118 00:05:43,250 --> 00:05:45,250 necesita un parámetro 119 00:05:45,250 --> 00:05:47,370 de entrada y luego un código el que yo quiera 120 00:05:47,370 --> 00:05:49,550 entonces pues planto yo una lambda directamente 121 00:05:49,550 --> 00:05:53,439 pues venga 122 00:05:53,439 --> 00:06:02,300 mi evento e 123 00:06:02,300 --> 00:06:04,180 cuando 124 00:06:04,180 --> 00:06:06,360 pulse yo una tecla quiero que hagas 125 00:06:06,360 --> 00:06:08,079 esto, el que 126 00:06:08,079 --> 00:06:10,680 pues vamos a crear un botón 127 00:06:10,680 --> 00:06:16,540 el texto 128 00:06:16,540 --> 00:06:17,680 del botón 129 00:06:17,680 --> 00:06:22,310 va a ser el texto de la tecla pulsada 130 00:06:22,310 --> 00:06:25,850 el texto de la tecla 131 00:06:25,850 --> 00:06:27,930 pulsada, supongo que lo 132 00:06:27,930 --> 00:06:29,509 podré sacar de E 133 00:06:29,509 --> 00:06:31,850 que es el objeto key event 134 00:06:31,850 --> 00:06:34,230 que tiene todo relacionado con el hecho de pulsar la tecla 135 00:06:34,230 --> 00:06:35,550 supongo, ¿verdad? 136 00:06:35,810 --> 00:06:37,790 secretaria, ¿me has encontrado ya el método para sacar 137 00:06:37,790 --> 00:06:38,589 la tecla pulsada? 138 00:06:40,470 --> 00:06:40,649 ¿eh? 139 00:06:41,990 --> 00:06:43,589 será getTest, supongo, ¿no? 140 00:06:44,350 --> 00:06:45,689 será este, digo yo 141 00:06:45,689 --> 00:06:48,970 getCode es, ¿seguro? 142 00:06:49,629 --> 00:06:51,930 ¿no es getTest? ah, no, porque getTest 143 00:06:51,930 --> 00:06:53,709 es el mensaje del evento 144 00:06:53,709 --> 00:06:54,769 vale 145 00:06:54,769 --> 00:06:57,769 a ver 146 00:06:57,769 --> 00:06:58,589 si no hay más 147 00:06:58,589 --> 00:07:01,709 de code 148 00:07:01,709 --> 00:07:03,430 de keycode, el código 149 00:07:03,430 --> 00:07:06,149 y luego 150 00:07:06,149 --> 00:07:07,290 no tengo que convertirlo 151 00:07:07,290 --> 00:07:09,689 bueno, vamos a poner keycode y si no me gusta 152 00:07:09,689 --> 00:07:11,769 ya le hago la conversión a char o lo que sea 153 00:07:11,769 --> 00:07:13,529 vamos a dejar el keycode 154 00:07:13,529 --> 00:07:16,430 lo digo porque a lo mejor me sale el código asti 155 00:07:16,430 --> 00:07:17,990 0.3 156 00:07:17,990 --> 00:07:19,290 o sea 0.3 o lo que sea 157 00:07:19,290 --> 00:07:28,550 sacar 158 00:07:28,550 --> 00:07:31,250 el texto de la tecla 159 00:07:31,250 --> 00:07:32,730 que se pulsó, E, F 160 00:07:32,730 --> 00:07:35,029 a través del evento E que es el event 161 00:07:35,029 --> 00:07:36,550 entonces 162 00:07:36,550 --> 00:07:43,839 pero getCode me saca keyCode 163 00:07:43,839 --> 00:07:45,959 y luego de keyCode tendremos que sacarlo de alguna 164 00:07:45,959 --> 00:07:46,319 manera 165 00:07:46,319 --> 00:07:49,920 sí, pero luego cómo lo convertimos a string 166 00:07:49,920 --> 00:07:54,160 sí, pero la conversión 167 00:07:54,160 --> 00:07:55,779 a string tal cual me lo va a convertir 168 00:07:55,779 --> 00:07:57,180 Ah, que tú ya lo has probado 169 00:07:57,180 --> 00:07:59,639 Mira, te han sustituido como secretario 170 00:07:59,639 --> 00:08:01,779 Ala 171 00:08:01,779 --> 00:08:03,000 Bueno, yo dejo esto 172 00:08:03,000 --> 00:08:04,139 A ver qué pasa 173 00:08:04,139 --> 00:08:05,720 ¿Vale? 174 00:08:08,579 --> 00:08:09,839 Vale, y ahora 175 00:08:09,839 --> 00:08:15,699 Añadir al panel 176 00:08:15,699 --> 00:08:17,360 El botón es fácil 177 00:08:17,360 --> 00:08:19,639 GetChildren 178 00:08:19,639 --> 00:08:21,560 No, panel no, se llamaba root 179 00:08:21,560 --> 00:08:25,759 Root.getChildren 180 00:08:25,759 --> 00:08:29,449 .add 181 00:08:29,449 --> 00:08:32,570 el botón B 182 00:08:32,570 --> 00:08:38,090 vale, esto es fácil 183 00:08:38,090 --> 00:08:39,830 pero yo aquí he añadido 184 00:08:39,830 --> 00:08:41,889 el botón en la posición por 185 00:08:41,889 --> 00:08:43,929 defecto, el problema es que 186 00:08:43,929 --> 00:08:45,730 me han dicho que añada el botón 187 00:08:45,730 --> 00:08:47,350 en una posición en concreta 188 00:08:47,350 --> 00:08:50,029 en concreto, al menos voy a probar a ver si esto me funciona 189 00:08:50,029 --> 00:08:51,149 y el texto me sale bien 190 00:08:51,149 --> 00:08:53,370 poniendo el botón en una 191 00:08:53,370 --> 00:08:55,610 posición en el medio 192 00:08:55,610 --> 00:08:58,190 sin más, lo voy a poner 193 00:08:58,190 --> 00:09:00,389 si era 400 en 200 194 00:09:00,389 --> 00:09:02,289 el tamaño de mi esa 195 00:09:02,289 --> 00:09:06,350 y aquí lo voy a poner en 200 también 196 00:09:06,350 --> 00:09:08,690 voy a hacer esta primera versión 197 00:09:08,690 --> 00:09:10,929 que me va a poner 198 00:09:10,929 --> 00:09:12,590 el botón en esa posición 199 00:09:12,590 --> 00:09:16,539 siempre, solamente para ver 200 00:09:16,539 --> 00:09:18,019 si me ha cogido bien el este 201 00:09:18,019 --> 00:09:23,600 vale, vamos a 202 00:09:23,600 --> 00:09:31,070 ejecutar esto, vale 203 00:09:31,070 --> 00:09:37,009 esto funciona, pues no me 204 00:09:37,009 --> 00:09:39,330 captura el evento de tecla pulsada 205 00:09:39,330 --> 00:09:58,370 para que coja el focus 206 00:09:58,370 --> 00:09:58,909 pero 207 00:09:58,909 --> 00:10:07,500 ¿y por qué si lo ha cogido con el ratón? 208 00:10:10,500 --> 00:10:11,639 de la tecla no lo pilla 209 00:10:11,639 --> 00:10:12,379 pero tienes que poner 210 00:10:12,379 --> 00:10:14,220 antes, no en el evento, aquí 211 00:10:14,220 --> 00:10:23,120 ay que listos sois 212 00:10:23,120 --> 00:10:24,159 o que lista es la IA 213 00:10:24,159 --> 00:10:25,139 O los dos juntos 214 00:10:25,139 --> 00:10:27,720 Pues que listo es Gemini 215 00:10:27,720 --> 00:10:30,159 Vale, menos mal que lo tenemos 216 00:10:30,159 --> 00:10:32,120 Vale, esto no sé 217 00:10:32,120 --> 00:10:33,639 Que es 218 00:10:33,639 --> 00:10:37,629 Entonces, esto es 219 00:10:37,629 --> 00:10:39,070 Para que tenga el foco siempre 220 00:10:39,070 --> 00:10:41,529 Lo que pasa es que claro, en esta aplicación 221 00:10:41,529 --> 00:10:43,330 Para que pida el foco 222 00:10:43,330 --> 00:10:44,370 Cada vez que pase algo 223 00:10:44,370 --> 00:10:46,789 Claro, porque en esta aplicación igual no funciona 224 00:10:46,789 --> 00:10:48,529 Pero en otras situaciones igual no 225 00:10:48,529 --> 00:10:50,629 Pero bueno, con esto 226 00:10:50,629 --> 00:10:52,009 ¿Te ha funcionado? 227 00:10:57,909 --> 00:10:59,070 Vale, esto sí 228 00:10:59,070 --> 00:11:01,950 Pues si hay que poner 229 00:11:01,950 --> 00:11:04,009 Request focus, aquí están todos los botoncitos 230 00:11:04,009 --> 00:11:07,470 Vale 231 00:11:07,470 --> 00:11:09,350 Pero lógicamente 232 00:11:09,350 --> 00:11:12,409 Y esta es la posición 200, 200 233 00:11:12,409 --> 00:11:15,669 Ah, es que he puesto dos veces 234 00:11:15,669 --> 00:11:17,549 X, ah, vale, vale 235 00:11:17,549 --> 00:11:20,070 Vale, vale, bueno 236 00:11:20,070 --> 00:11:22,289 Pues efectivamente poniendo esto 237 00:11:22,289 --> 00:11:24,250 Coge el foco 238 00:11:24,250 --> 00:11:25,629 Y entonces pilla este evento 239 00:11:25,629 --> 00:11:27,330 Porque 240 00:11:27,330 --> 00:11:33,289 mi duda es por qué ha pillado 241 00:11:33,289 --> 00:11:34,830 este sin tener eso 242 00:11:34,830 --> 00:11:38,460 Yemi no dice nada al respecto 243 00:11:38,460 --> 00:11:40,820 bueno, luego se lo preguntamos 244 00:11:40,820 --> 00:11:42,919 si eso, venga, ahora vamos a completar esto 245 00:11:42,919 --> 00:11:44,460 vale 246 00:11:44,460 --> 00:11:46,299 bueno, pues entonces 247 00:11:46,299 --> 00:11:48,940 hemos hecho parte 248 00:11:48,940 --> 00:11:50,659 del ejercicio 249 00:11:50,659 --> 00:11:52,799 pero no todo, hemos hecho 250 00:11:52,799 --> 00:11:55,080 cuando pulsamos una tecla 251 00:11:55,080 --> 00:11:56,720 colocar un botón 252 00:11:56,720 --> 00:11:57,960 con el texto de la tecla 253 00:11:57,960 --> 00:12:02,360 pero yo lo he puesto siempre en la posición 200-200 254 00:12:02,360 --> 00:12:05,559 el ejercicio me dice que lo ponga 255 00:12:05,559 --> 00:12:08,740 en la posición en la que está el ratón en ese momento 256 00:12:08,740 --> 00:12:11,519 es decir, que lo ponga aquí 257 00:12:11,519 --> 00:12:13,960 en la posición en la que está el ratón 258 00:12:13,960 --> 00:12:17,519 pero claro, la posición en la que está el ratón 259 00:12:17,519 --> 00:12:20,759 en ese momento, yo no la puedo sacar 260 00:12:20,759 --> 00:12:23,679 de aquí, no la puedo sacar 261 00:12:23,679 --> 00:12:26,320 de este event, ¿vale? porque este event 262 00:12:26,320 --> 00:12:27,980 es el evento del teclado 263 00:12:27,980 --> 00:12:30,340 solo tiene la información de lo que ha pasado 264 00:12:30,340 --> 00:12:31,200 con el teclado 265 00:12:31,200 --> 00:12:34,259 entonces no puedo sacar la posición 266 00:12:34,259 --> 00:12:34,899 del ratón 267 00:12:34,899 --> 00:12:38,340 ¿cómo podemos poner aquí 268 00:12:38,340 --> 00:12:39,379 la posición del ratón? 269 00:12:39,940 --> 00:12:42,259 aquí yo tendría que poner algo 270 00:12:42,259 --> 00:12:48,669 posición 271 00:12:48,669 --> 00:12:50,870 X 272 00:12:50,870 --> 00:12:53,350 posición del ratón 273 00:12:53,350 --> 00:12:54,070 X 274 00:12:54,070 --> 00:12:56,970 querría yo poner esto, posición del ratón 275 00:12:56,970 --> 00:12:57,370 Y 276 00:12:57,370 --> 00:13:03,009 posición del ratón 277 00:13:03,009 --> 00:13:03,590 y 278 00:13:03,590 --> 00:13:06,049 esto es lo que necesito 279 00:13:06,049 --> 00:13:08,470 que alguien me diga cuáles son 280 00:13:08,470 --> 00:13:10,129 estas variables, que alguien me lo diga 281 00:13:10,129 --> 00:13:12,250 es lo que necesito, ¿cuál es la posición del ratón X? 282 00:13:12,370 --> 00:13:13,070 ¿cuál es la posición del ratón Y? 283 00:13:13,490 --> 00:13:16,049 no la puedo sacar de aquí, de aquí no puedo 284 00:13:16,049 --> 00:13:17,450 porque este es el evento del teclado 285 00:13:17,450 --> 00:13:19,990 este no sabe nada de dónde está el ratón 286 00:13:19,990 --> 00:13:21,549 no la puedo sacar de aquí 287 00:13:21,549 --> 00:13:24,509 ¿qué hago con estas variables? ¿cómo me las invento? 288 00:13:24,570 --> 00:13:24,889 ¿qué hago? 289 00:13:24,889 --> 00:13:27,149 a ver, pues habría 290 00:13:27,149 --> 00:13:29,110 muchas posibilidades, pasar un 291 00:13:29,110 --> 00:13:30,570 objeto, ratón 292 00:13:30,570 --> 00:13:32,529 a hacer unas cosas muy raras 293 00:13:32,529 --> 00:13:35,309 pero en este ejercicio en concreto lo tenemos más fácil 294 00:13:35,309 --> 00:13:37,190 y es que ya 295 00:13:37,190 --> 00:13:39,029 tenemos un evento que 296 00:13:39,029 --> 00:13:41,250 captura cada vez que se mueve el ratón 297 00:13:41,250 --> 00:13:42,250 cada vez que se mueve 298 00:13:42,250 --> 00:13:45,350 entonces dentro de este evento, estas dos posiciones 299 00:13:45,350 --> 00:13:46,330 que yo he capturado 300 00:13:46,330 --> 00:13:49,429 si en lugar de ser variables locales 301 00:13:49,429 --> 00:13:51,070 las saco fuera 302 00:13:51,070 --> 00:13:53,049 a variables aquí, también 303 00:13:53,049 --> 00:13:54,730 van a ser accesibles desde aquí 304 00:13:54,730 --> 00:14:13,529 Con lo cual, perfecto, con eso lo solucionamos. Como estas variables ya van a tener siempre la posición del ratón, la van a tener siempre, pues no las dejes como locales, déjalas fuera de este bloque y ya son accesibles desde cualquier otro sitio. 305 00:14:13,529 --> 00:14:15,690 Pues entonces 306 00:14:15,690 --> 00:14:17,769 Ponemos aquí 307 00:14:17,769 --> 00:14:19,190 Esas variables 308 00:14:19,190 --> 00:14:23,320 Int 309 00:14:23,320 --> 00:14:26,279 PostX 310 00:14:26,279 --> 00:14:28,100 Y postY 311 00:14:28,100 --> 00:14:29,559 Que son estas dos 312 00:14:29,559 --> 00:14:31,039 Con lo cual 313 00:14:31,039 --> 00:14:32,919 Este las actualiza 314 00:14:32,919 --> 00:14:35,580 Luego estas variables 315 00:14:35,580 --> 00:14:38,179 Van siguiendo siempre la posición del ratón 316 00:14:38,179 --> 00:14:38,980 La van siguiendo 317 00:14:38,980 --> 00:14:42,019 Pero al no ser ya variables locales 318 00:14:42,019 --> 00:14:43,360 Sino al haberlas sacado aquí 319 00:14:43,360 --> 00:14:45,360 Son accesibles desde aquí 320 00:14:45,360 --> 00:14:47,740 pues las uso aquí mismo 321 00:14:47,740 --> 00:14:49,940 pos ratón x 322 00:14:49,940 --> 00:14:51,519 y pos y 323 00:14:51,519 --> 00:14:52,580 vale 324 00:14:52,580 --> 00:14:55,820 entonces este lógicamente 325 00:14:55,820 --> 00:15:00,000 me dice 326 00:15:00,000 --> 00:15:01,799 que podría no estar inicializada 327 00:15:01,799 --> 00:15:02,879 entre otras cosas 328 00:15:02,879 --> 00:15:03,879 a ver 329 00:15:03,879 --> 00:15:07,580 igual las tengo que sacar 330 00:15:07,580 --> 00:15:17,669 no entiendo por qué las tengo que hacer finales 331 00:15:17,669 --> 00:15:24,929 Igual las tengo que sacar 332 00:15:24,929 --> 00:15:28,549 A ver, siempre las puedo sacar aquí fuera 333 00:15:28,549 --> 00:15:28,950 Y ya está 334 00:15:28,950 --> 00:15:35,960 ¿Cómo que si pones una sola te deja? 335 00:15:39,460 --> 00:15:40,179 ¿En serio? 336 00:15:47,460 --> 00:15:52,820 A ver, siempre las puedo poner aquí fuera 337 00:15:52,820 --> 00:16:03,210 pero como en el 338 00:16:03,210 --> 00:16:07,440 supongo que sí 339 00:16:07,440 --> 00:16:12,899 a ver vamos a ponerla 340 00:16:12,899 --> 00:16:20,320 vale entonces 341 00:16:20,320 --> 00:16:22,220 las quito de aquí 342 00:16:22,220 --> 00:16:24,799 las quito de aquí 343 00:16:24,799 --> 00:16:27,799 vale entonces 344 00:16:27,799 --> 00:16:28,879 aquí sí 345 00:16:28,879 --> 00:16:30,799 y 346 00:16:30,799 --> 00:16:36,289 Bueno, acabo de entender muy bien 347 00:16:36,289 --> 00:16:38,370 Tendría que pensarlo, porque dentro no 348 00:16:38,370 --> 00:16:40,370 No me las deja 349 00:16:40,370 --> 00:16:42,110 Porque tampoco he leído muy en detalle lo que me decía 350 00:16:42,110 --> 00:16:46,240 Bueno, vamos a probar 351 00:16:46,240 --> 00:16:49,419 Dejamos aparcado por ahora 352 00:16:49,419 --> 00:16:50,340 Vale 353 00:16:50,340 --> 00:16:52,460 Las hemos sacado fuera 354 00:16:52,460 --> 00:16:53,940 ¿Ibas a decir algo? 355 00:16:54,919 --> 00:16:56,600 Bueno, las hemos sacado fuera 356 00:16:56,600 --> 00:16:59,159 Entonces están disponibles 357 00:16:59,159 --> 00:17:00,460 Están disponibles 358 00:17:00,460 --> 00:17:01,899 Para 359 00:17:01,899 --> 00:17:05,799 Cualquier método 360 00:17:05,799 --> 00:17:07,819 Y cualquier clase interna y cualquier todo 361 00:17:07,819 --> 00:17:09,440 Ahí están disponibles 362 00:17:09,440 --> 00:17:11,539 Y actualizadas permanentemente aquí 363 00:17:11,539 --> 00:17:13,960 Actualizadas aquí permanentemente 364 00:17:13,960 --> 00:17:15,180 Y disponibles para quien quiera 365 00:17:15,180 --> 00:17:17,599 ¿Y quién las quiere? Pues las quiere este 366 00:17:17,599 --> 00:17:19,960 Este las quiere 367 00:17:19,960 --> 00:17:21,119 Pues las usa 368 00:17:21,119 --> 00:17:22,099 Y ya está 369 00:17:22,099 --> 00:17:25,160 Vamos a ver ahora 370 00:17:25,160 --> 00:17:34,440 Bueno, pues este se mueve 371 00:17:34,440 --> 00:17:40,019 Y ya está 372 00:17:40,019 --> 00:17:42,619 ¿Cómo? ¿Quién es coma? 373 00:17:43,099 --> 00:17:43,599 ¿A la coma? 374 00:17:45,400 --> 00:17:52,450 Plus 375 00:17:52,450 --> 00:18:01,170 Digit 2 376 00:18:01,170 --> 00:18:04,190 Bueno, la conversión a string es peculiar 377 00:18:04,190 --> 00:18:05,470 Pero bueno 378 00:18:05,470 --> 00:18:10,240 Windows 379 00:18:10,240 --> 00:18:16,259 Undefined 380 00:18:16,259 --> 00:18:28,799 Vale, pues ya está 381 00:18:28,799 --> 00:18:29,420 Muy bonito 382 00:18:29,420 --> 00:18:39,000 Caps 383 00:18:39,000 --> 00:18:40,700 Shift 384 00:18:40,700 --> 00:18:47,180 Vale, pues ya está 385 00:18:47,180 --> 00:18:50,740 Este acabado 386 00:18:50,740 --> 00:18:51,119 ¿Vale? 387 00:18:52,599 --> 00:18:53,720 Voy a parar este momento 388 00:18:53,720 --> 00:18:54,880 Voy a volver a ponerlas dentro 389 00:18:54,880 --> 00:18:56,720 A ver si el mensaje que dice