1 00:00:11,759 --> 00:00:22,660 Bueno, en el primer vídeo hemos visto cómo hacemos nuestra ventana, cómo se nos genera a partir de una clase. 2 00:00:24,100 --> 00:00:33,439 Tenemos nuestro fichero principal en el que hemos llamado al fichero donde está contenida la clase con la que trabajamos de ventana principal. 3 00:00:33,439 --> 00:00:43,899 le hemos pasado como parámetros de entrada el ancho, el alto, la Y y el texto, el title de la ventana y la redibujamos. 4 00:00:45,079 --> 00:00:48,659 Esta sería nuestra clase principal y continuamos a partir de aquí. 5 00:00:49,320 --> 00:00:53,840 A partir de aquí lo que quiero hacer son nuestros frames, nuestras cajas, 6 00:00:53,840 --> 00:01:11,359 Para ir haciendo una interfaz que sea por cajas, darle un formato más actual y más semejante a lo que vienen siendo las páginas web, ¿vale? A todo lo que es el desarrollo web. 7 00:01:11,359 --> 00:01:21,599 Vale, para eso vamos a utilizar, pues por ejemplo, esta función def, ¿vale? 8 00:01:21,620 --> 00:01:25,760 Y desde aquí voy a empezar a llamar a las diferentes cajas, ¿vale? 9 00:01:25,760 --> 00:01:34,599 Entonces, cada una de esas cajas, no me acuerdo bien qué colores eran, da igual, ponemos los que sean, 10 00:01:36,620 --> 00:01:42,120 tenían un color diferente para distinguirlas bien. 11 00:01:43,180 --> 00:01:57,379 Perdón. Vale, entonces, vamos a crearnos un fichero que yo le voy a llamar herramientas.py o tool.py, como vosotros queráis. 12 00:01:57,939 --> 00:02:06,900 ¿Vale? En este fichero, pues tampoco voy a importar ninguna librería. 13 00:02:06,900 --> 00:02:41,280 Al final lo único que voy a hacer es, pues es que podemos tener incluso las mismas variables, bueno, como tenemos que hacerlo por clases, o sea, utilizando clases, pues vamos a hacer una clase que la voy a llamar, pues eso, colores aplicación, por ejemplo. 14 00:02:42,219 --> 00:03:16,210 no hereda de nada, vale, dentro de colores aplicación, el def, guión bajo, guión bajo, init, guión bajo, guión bajo, self, vale, dentro de esta función, pues vamos a llamar a self, entonces vamos a llamar a color, cabecera, pie, esto es igual a, vale, siempre empezamos así, vale, colores, 15 00:03:17,270 --> 00:03:20,729 con un formato de esa decimal 16 00:03:20,729 --> 00:03:26,229 entonces este puede ser 17 00:03:26,229 --> 00:03:30,409 que fuera de estos que tengo aquí apuntados, uno sería este 18 00:03:30,409 --> 00:03:35,969 otro color 19 00:03:35,969 --> 00:03:42,539 principal, que este sería 20 00:03:42,539 --> 00:03:47,159 el de 805 21 00:03:47,159 --> 00:03:50,460 CD 22 00:03:50,460 --> 00:04:07,229 color principal 23 00:04:07,229 --> 00:04:09,009 el de la izquierda 24 00:04:09,009 --> 00:04:16,439 este es igual a 25 00:04:16,439 --> 00:04:23,000 B805AF 26 00:04:23,000 --> 00:04:34,699 y vale, un color que es 27 00:04:34,699 --> 00:04:38,540 de la fuente, color fuente 28 00:04:38,540 --> 00:04:51,790 este es 29 00:04:51,790 --> 00:05:40,560 F, E, F, E, fuente secundaria, vale, que es 7A0374, vale, estos son los colores que yo tengo, que no sé si son exactamente los mismos que os puse a vosotros, 30 00:05:40,560 --> 00:05:43,439 que supongo que sigo, están aquí apuntados en un papel 31 00:05:43,439 --> 00:05:48,560 vale, y una vez que tengo estos colores, lo único que hago 32 00:05:48,560 --> 00:05:52,279 es def, me voy creando funciones 33 00:05:52,279 --> 00:05:54,420 get 34 00:05:54,420 --> 00:06:08,180 color, y esto me va a poner, me va a devolver 35 00:06:08,699 --> 00:06:11,459 el resum 36 00:06:11,459 --> 00:06:23,170 a esto, está mal, por lo que os decía en el primer vídeo, vale, esto siempre 37 00:06:23,170 --> 00:06:39,199 le damos del self, vamos, le damos, perdón, siempre se le pasa el self para que pueda hacer referencia a las variables de toda la clase de esa instancia, ¿vale? 38 00:06:39,199 --> 00:07:06,180 Entonces aquí voy a devolver este y esto pues lo vamos a duplicar las veces que nos hagan falta, entonces son 1, 2, 3 y 4, 4 veces, pues 4 veces que lo tengo que escribir. 39 00:07:06,180 --> 00:07:17,410 color principal 40 00:07:17,410 --> 00:07:44,860 ser color 41 00:07:44,860 --> 00:07:47,600 izquierda 42 00:07:47,600 --> 00:08:01,399 vale 43 00:08:01,399 --> 00:08:06,589 aquí 44 00:08:06,589 --> 00:08:12,569 get color 45 00:08:12,569 --> 00:08:13,329 fuente 46 00:08:13,329 --> 00:08:26,399 y por último 47 00:08:26,399 --> 00:08:30,899 get color 48 00:08:30,899 --> 00:08:33,240 fuente 49 00:08:33,240 --> 00:08:36,500 secundario 50 00:08:36,500 --> 00:08:40,090 return 51 00:08:40,090 --> 00:08:41,490 ser 52 00:08:41,490 --> 00:08:42,889 punto 53 00:08:42,889 --> 00:08:51,779 ser punto 54 00:08:51,779 --> 00:08:54,779 color fuente secundaria 55 00:08:54,779 --> 00:08:57,639 vale, de esa manera voy a llamar 56 00:08:57,639 --> 00:08:58,919 a cada uno de estos métodos 57 00:08:58,919 --> 00:09:00,360 cuando me declaro la clase 58 00:09:00,360 --> 00:09:02,240 colores aplicación 59 00:09:02,240 --> 00:09:05,320 y ya tengo acceso 60 00:09:05,320 --> 00:09:06,240 a esos colores 61 00:09:06,240 --> 00:09:07,840 entonces, ¿qué es lo que tengo que hacer? 62 00:09:07,980 --> 00:09:10,759 pues venirme a mi clase ventana principal 63 00:09:10,759 --> 00:09:11,899 importo 64 00:09:11,899 --> 00:09:17,480 perdón, desde el fichero 65 00:09:17,480 --> 00:09:20,779 herramientas 66 00:09:20,779 --> 00:09:23,600 import 67 00:09:23,600 --> 00:09:27,789 ¿Cómo lo he llamado? 68 00:09:29,389 --> 00:09:30,610 Colores aplicación 69 00:09:30,610 --> 00:09:33,289 Colores aplicación 70 00:09:33,289 --> 00:09:34,370 ¿Vale? 71 00:09:36,049 --> 00:09:37,370 Y entonces, pues 72 00:09:37,370 --> 00:09:39,350 Igual que antes, puedo tener aquí 73 00:09:39,350 --> 00:09:40,789 Unas variables, una que es 74 00:09:40,789 --> 00:09:41,190 El 75 00:09:41,190 --> 00:09:44,090 Punto 76 00:09:44,090 --> 00:09:48,610 Color principal 77 00:09:48,610 --> 00:09:54,049 Es igual a 78 00:09:54,049 --> 00:09:56,929 Vale, y esto lo vamos a poner como 79 00:09:56,929 --> 00:09:58,250 Asca 80 00:09:58,250 --> 00:10:22,399 Vale, esto va a ser ca.getColorPrincipal, aquí vamos a poner self.colorIzquierda, esto va a ser igual a ca.getColorIzquierda. 81 00:10:22,399 --> 00:10:43,950 izquierda, self, vamos a poner color cabecera, esto es igual a ca.colorcabecera, self.colorfuente, 82 00:10:43,950 --> 00:11:05,090 Esto va a ser igual a ca.colorFuente. Y por último, self.colorFuente secundaria, secundario, ca.tiri. Ahí estamos. 83 00:11:05,090 --> 00:11:30,509 Vale, ya tengo acceso a esos colores que nos hemos definido en herramientas.py y que para hacer cualquier cambio en el desarrollo que estamos haciendo lo único que tendría que hacer es venir aquí y ir modificándolos y eso ya me lo va a coger en todo el desarrollo porque lo estamos importando como si fuera una clase. 84 00:11:30,509 --> 00:11:36,269 que es lo interesante de trabajar con, bueno, es parte de lo interesante de trabajar con clases. 85 00:11:36,889 --> 00:11:46,090 Bueno, entonces, yo voy a empezar a crear mis cajas, entonces, llamamos a esta función, ¿vale? 86 00:11:46,090 --> 00:12:21,840 a cajas, vale, cajas, y siempre con el set, ahí está, bueno, lo que queremos hacer es, 87 00:12:21,840 --> 00:12:45,200 Entonces, no me acuerdo de los tamaños y todo esto, pero era en nuestra ventana, que ahora la hacemos un poco más grande para que sea mejor, era un encabezado, un pie de página, una columna a la izquierda y el resto como principal a la derecha. 88 00:12:45,200 --> 00:12:49,700 ¿Vale? Queríamos hacer eso 89 00:12:49,700 --> 00:12:53,779 Entonces, según el diseño que tenemos o que yo os mostré en el examen 90 00:12:53,779 --> 00:13:01,120 Tengo que hacer primero ese encabezado o ese pie de la interfaz 91 00:13:01,120 --> 00:13:08,220 ¿Vale? Para que luego esa columna de la izquierda no pase por encima de las dos 92 00:13:08,220 --> 00:13:12,659 Me da igual que sea el encabezado que el pie de la interfaz 93 00:13:12,659 --> 00:13:14,500 Entonces voy a empezar por el encabezado 94 00:13:14,500 --> 00:13:29,399 Luego hago el pie, luego hacemos la columna de la izquierda y por último ese frame principal donde vamos a ir cargando los datos que nos hagan falta. 95 00:13:29,399 --> 00:13:43,840 Vale, entonces, vamos a crearnos primero, vamos a decirle, esto va a ser de un tamaño de, vamos a ponerle, 800 y este de 400. 96 00:13:43,840 --> 00:14:11,750 A ver cómo nos lo hace. Vale. Esto. Yo creo que lo quiero un poco más alto, así que le vamos a poner aquí 850. Algo así. Va a dar la sensación de algo hecho mal. 97 00:14:11,750 --> 00:14:21,179 vamos a ver 98 00:14:21,179 --> 00:14:32,919 aquí 99 00:14:32,919 --> 00:14:37,500 está pasando algo 100 00:14:37,500 --> 00:14:52,899 ah, porque excedía 101 00:14:52,899 --> 00:14:54,980 el tamaño, vale, pero así 102 00:14:54,980 --> 00:14:57,340 me vale, 800 por 600 103 00:14:57,340 --> 00:14:59,919 vale 104 00:14:59,919 --> 00:15:02,879 con, aquí podemos 105 00:15:02,879 --> 00:15:05,120 ir dibujando, utilizando los colores 106 00:15:05,120 --> 00:15:06,240 que acabamos de crear 107 00:15:06,240 --> 00:15:08,740 y vamos dibujando esas cajas 108 00:15:08,740 --> 00:15:10,179 que llamáis vosotros 109 00:15:10,179 --> 00:15:12,100 que en realidad son frame 110 00:15:12,100 --> 00:15:19,879 Y cuando estamos trabajando con el TKinter son el TKinter.tkframe, ¿vale? Entonces, venga, vamos a por ello. 111 00:15:21,700 --> 00:15:34,259 Aquí vamos a coger la ventana principal dentro de cajas y vamos a empezar, ¿vale? Con la superior, ¿vale? Entonces, la que está en la parte de arriba. 112 00:15:34,259 --> 00:15:56,220 self, le llamamos, pues, por ejemplo, cabecera, ¿vale? Esto va a ser igual a tk.frame, ¿vale? 113 00:15:56,220 --> 00:16:16,279 vale, tk.frame, vale, recordad que es el tk porque aquí le he puesto el alias al tkinter, vale, tkframe, bueno, aquí le vamos a ir pasando una serie de parámetros, vale, una serie de parámetros, 114 00:16:17,139 --> 00:16:28,659 Siempre a los widgets de Python, el primer parámetro que le voy a pasar siempre, siempre, siempre es donde quiero dibujar este widget. 115 00:16:28,860 --> 00:16:36,360 En este caso, el widget es el frame, aunque va a ser el contenedor de otros widgets, pero es un widget, no deja de ser un objeto, ¿vale? 116 00:16:36,980 --> 00:16:39,580 Entonces, ¿dónde lo voy a dibujar? En la ventana principal. 117 00:16:40,139 --> 00:16:44,240 ¿Cuál es esa ventana principal? Es self, ¿vale? 118 00:16:44,240 --> 00:16:52,700 recordar cómo pongo self.título, cómo pongo la geometría y para hacer referencia a la ventana 119 00:16:52,700 --> 00:16:59,360 siempre pongo el self porque es la instancia de esa clase. Esa ventana que se dibuja es esa 120 00:16:59,360 --> 00:17:06,180 instancia. Si yo dibujara varias ventanas desde main.py, desde aquí, yo dibujara varias ventanas 121 00:17:06,180 --> 00:17:17,299 root, root1, root2, cada una de esas ventanas haría referencia a sí misma a través del self, ¿vale? 122 00:17:17,359 --> 00:17:27,180 Entonces ponemos el self, como primer parámetro le digo que quiero que se dibuje en esta instancia, en este self, ¿vale? 123 00:17:27,180 --> 00:17:34,859 Vale, y ya aparte, esto es lo importante, esto y luego situarlo en una posición o en otra, ¿vale? 124 00:17:36,180 --> 00:17:52,599 Vale, yo le he pasado otros dos parámetros. Una que es el color de fondo, ¿vale? Que es el VG. Y esto le digo que es igual a self. Estamos en la cabecera, entonces tenemos el color cabecera. 125 00:17:52,599 --> 00:18:00,819 ser punto color cabecera vale y otro parámetro o sea le pasó una coma porque son 126 00:18:02,900 --> 00:18:09,680 diferentes parámetros que van dentro del teca frame y otro parámetro es como es la 127 00:18:09,680 --> 00:18:18,670 cabecera pues una altura vale entonces si quiero que tenga una altura pues le vamos a pasar pues 128 00:18:18,670 --> 00:18:45,940 por ejemplo, va a ser igual a, vamos a poner 40, ¿vale? Vale, bueno, estos serían los parámetros para dibujar ese frame de la parte superior de la ventana, ¿vale? 129 00:18:45,940 --> 00:19:15,759 Esto, si yo vengo aquí y le doy al play, no me dibuja nada, bueno, lo que me hace falta ahora es self.cabecera.pack, vale, entonces tenéis que acordar que a la hora de situar un objeto dentro de un contenedor, un widget dentro de un lienzo, de un canvas o de un contenedor, ¿vale? 130 00:19:15,759 --> 00:19:21,980 como pueden ser los frames tenéis tres formas de hacerlo con el pack con el place y con el grid 131 00:19:21,980 --> 00:19:30,039 vale y cada una de las diferentes situaciones que os podéis encontrar pues puede ser mejor utilizar 132 00:19:30,039 --> 00:19:38,140 una opción u otra en este caso para mí es muy cómodo usar el pack porque voy acomodando los 133 00:19:38,140 --> 00:19:45,099 widgets según según los voy creando vale automáticamente se me van a ir 134 00:19:45,099 --> 00:19:50,019 acomodando en la en lo alto en lo bajo a la izquierda y a la derecha entonces 135 00:19:50,019 --> 00:19:55,180 para mí es muy cómodo entonces este para este forma de 136 00:19:55,180 --> 00:20:01,980 ordenarlo de situar los widgets tiene un parámetro que es el site que le dices 137 00:20:01,980 --> 00:20:07,420 con el tk punto pues en este caso yo quiero que me lo sitúe en la parte de 138 00:20:07,420 --> 00:20:15,089 arriba entonces le digo el teca punto top vale teca punto top 139 00:20:15,089 --> 00:20:24,940 tenemos otros dos parámetros uno que es el film que aquí le podemos pasar veis 140 00:20:29,130 --> 00:20:34,230 aquí no me lo muestra vale le puedo pasar si aquí estás el 141 00:20:34,230 --> 00:20:42,309 film vale en x en y en voz si quiero que rellene en x y voz y ambos vale 142 00:20:42,309 --> 00:20:54,690 Yo le voy a pasar a ambos, aunque al pasarle una altura, ya le digo que me lo rellene, en este caso en Y, pero hasta esa altura, como máximo hasta esa altura. 143 00:20:55,250 --> 00:21:00,410 Le podría pasar otro parámetro, que luego lo haré, aquí no me interesa, que se expanda, ¿vale? 144 00:21:00,849 --> 00:21:10,049 También hemos puesto el Recyble a falso y falso, así que el que se expanda o no, cuando cambiamos la resolución de la pantalla, 145 00:21:10,049 --> 00:21:17,509 Aquí no tendría sentido, entonces en un momento dado el Recybel lo voy a comentar, ¿vale? Para poder reescalarlo. 146 00:21:18,930 --> 00:21:39,079 Vale, esto me tendría que dibujar la cabecera, el frame de la cabecera. Vamos a verlo, vamos a limpiar esto y vamos a ver por qué nos está dando este error. 147 00:21:39,079 --> 00:21:42,259 Vale, dice que es desconocido ese color 148 00:21:42,259 --> 00:21:45,980 Esto es porque me faltan estos paréntesis 149 00:21:45,980 --> 00:21:53,079 Estamos llamando a esas funciones, vale 150 00:21:53,079 --> 00:21:55,420 Y aquí igual 151 00:21:55,420 --> 00:21:57,440 Ya estás 152 00:21:57,440 --> 00:22:04,740 Vamos a poner que sea 153 00:22:04,740 --> 00:22:08,720 Sea igual a colores 154 00:22:08,720 --> 00:22:12,980 Vale 155 00:22:12,980 --> 00:22:16,819 Lo vamos, no lo puedes poner como un alias 156 00:22:16,819 --> 00:22:39,970 hay que declarar sea como una instancia de esa clase, ¿vale? Vale, entonces ahora ya sí lo tenemos aquí, ¿vale? Y hemos dibujado esta ventana con este color que no sé si es el que os dije en el examen o no, 157 00:22:39,970 --> 00:23:05,799 Pero bueno, ahí está nuestra franja superior, nuestro frame superior, ¿vale? Entonces ahora vamos a hacer lo mismo con el frame inferior. Antes de hacer lo mismo vamos a hacer alguna pruebecilla, ¿vale? De cambio de resolución y para hacer eso, lo que os comentaba antes, vamos a coger en el Recybel y lo voy a comentar, ¿vale? 158 00:23:05,799 --> 00:23:34,220 Vale, entonces vamos a ver que si yo empiezo a modificar la resolución, el tamaño de esa ventana, pues el fill, el parámetro que hemos pasado dentro de pack, ese fill en ambos, en both, siempre se está cumpliendo, o sea, siempre lo rellena en x y en y hasta 50, vale, o hasta 40 que hemos puesto. 159 00:23:35,799 --> 00:23:58,700 Vale, entonces eso nos lo está, lo cumple siempre, vale, y ya tenemos nuestra ventana, vale, vamos con la cabecera, pues ahora el pie, pues entonces self.pie es igual a, esto es lo mismo, 160 00:23:58,700 --> 00:24:20,420 TK.frame, donde queremos que lo dibujen, self, coma, queremos que el color de fondo BG sea igual, pues lo mismo, self.color, cabecera, que es el mismo que el de la fuente, 161 00:24:20,420 --> 00:24:32,119 y le decimos que sea 40 también vale y ahora le digo que es el punto cabecera no perdón pie 162 00:24:34,259 --> 00:24:43,019 punto pack site en este caso el site es en la parte inferior así que este punto 163 00:24:43,019 --> 00:25:07,150 bottom, vale, fill, pues igual, que me lo rellene en x y en y, ambos, vale, esto ya lo que nos va a hacer es que desde el main ya tenemos nuestro parte superior, 164 00:25:07,150 --> 00:25:26,190 nuestro frame en la parte superior, nuestro frame en la parte inferior, ¿vale? Y que responde bien a la resolución, ¿vale? Muy bien, ahora vamos a hacer nuestra frame de, en la izquierda, ¿vale? 165 00:25:26,190 --> 00:25:52,930 La que habíamos dicho, entonces esto es self.izquierda es igual a tk.frame, le decimos donde lo quiero dibujar, siempre en self, le digo, en este caso lo que quiero es que tenga un determinado ancho, ¿vale? 166 00:25:52,930 --> 00:25:59,450 Que tenga un determinado ancho, entonces para poner ese determinado ancho lo que le voy a pasar es el width, ¿vale? 167 00:25:59,450 --> 00:26:06,470 entonces veje primero el color que color era éste el ser punto color izquierdas 168 00:26:06,470 --> 00:26:09,009 este 169 00:26:09,009 --> 00:26:16,750 vale y ahora lo que os digo en vez de pasarle el parámetro y le pasó 170 00:26:17,750 --> 00:26:22,849 y este le vamos a decir pues por ejemplo que sea 171 00:26:22,849 --> 00:26:32,730 bueno, siempre se suelen ser entre 150 a 200, vamos a dejar de 150, lo vemos ahora, 172 00:26:34,730 --> 00:26:42,210 y, pues eso, si no es el tamaño que nosotros queremos, lo modificamos, 173 00:26:42,210 --> 00:26:49,589 self.izquierda, todo el rato lo mismo, self.izquierda.pack, 174 00:26:49,589 --> 00:26:56,869 donde quiero colocar en el self, en el espacio que me queda del self 175 00:26:56,869 --> 00:27:00,549 donde quiero colocar este frame, pues a la izquierda 176 00:27:00,549 --> 00:27:04,670 pues entonces le paso el side igual tk.left 177 00:27:04,670 --> 00:27:10,410 vale, le pasamos el fill, el relleno que le digo 178 00:27:10,410 --> 00:27:12,529 pues ponlos en ambos 179 00:27:12,529 --> 00:27:17,329 y le voy a pasar también el expandir 180 00:27:17,329 --> 00:27:19,670 el span 181 00:27:19,670 --> 00:27:21,970 y este le digo que sea falso 182 00:27:21,970 --> 00:27:23,910 para que siempre 183 00:27:23,910 --> 00:27:25,869 me ocupe esos 150 184 00:27:25,869 --> 00:27:28,529 vale 185 00:27:28,529 --> 00:27:30,269 vale 186 00:27:30,269 --> 00:27:31,490 y entonces yo cojo 187 00:27:31,490 --> 00:27:32,490 y 188 00:27:32,490 --> 00:27:36,269 lo ejecutamos y vemos 189 00:27:36,269 --> 00:27:37,450 que ha pasado 190 00:27:37,450 --> 00:27:39,710 o que no ha pasado 191 00:27:39,710 --> 00:27:41,109 aquí estás, vale 192 00:27:41,109 --> 00:27:42,990 son dos colores diferentes 193 00:27:42,990 --> 00:27:45,569 este yo lo puedo ir haciendo 194 00:27:45,569 --> 00:27:46,869 más grande o más pequeño 195 00:27:46,869 --> 00:27:51,130 ¿Vale? Siempre estás a 150 196 00:27:51,130 --> 00:27:54,529 ¿Vale? Aunque se expanda, se expanda bien 197 00:27:54,529 --> 00:27:56,269 En este caso en I 198 00:27:56,269 --> 00:27:59,109 Y aquí siempre me respeta al 150 199 00:27:59,109 --> 00:28:01,829 Y ya tengo mis 3 frames hechos 200 00:28:01,829 --> 00:28:05,329 ¿Vale? Y que responden perfectamente al cambio de resolución 201 00:28:05,329 --> 00:28:08,049 Y nos falta el último, pues vamos con el último 202 00:28:08,049 --> 00:28:11,690 El último es el principal 203 00:28:11,690 --> 00:28:14,109 Entonces en el principal 204 00:28:14,109 --> 00:28:32,170 pues otra vez hacer lo mismo, vale, vamos a self.principal es igual a tk.frame, este lo dibujamos en lo que queda ya de self, 205 00:28:32,170 --> 00:28:36,970 y le voy a pasar 206 00:28:36,970 --> 00:28:37,869 bg 207 00:28:37,869 --> 00:28:40,990 es igual a 208 00:28:40,990 --> 00:28:42,750 cel 209 00:28:42,750 --> 00:28:44,990 punto color 210 00:28:44,990 --> 00:28:46,750 principal 211 00:28:46,750 --> 00:28:47,710 este 212 00:28:47,710 --> 00:28:49,369 vale 213 00:28:49,369 --> 00:28:54,640 y ahora quiero que me ocupe 214 00:28:54,640 --> 00:28:56,440 todo a lo alto y a lo ancho 215 00:28:56,440 --> 00:28:58,460 así que pues no le meto ninguna 216 00:28:58,460 --> 00:29:00,799 altura, ningún parámetro de altura ni de ancho 217 00:29:00,799 --> 00:29:01,779 vale 218 00:29:01,779 --> 00:29:04,579 si que cel principal 219 00:29:04,579 --> 00:29:09,160 es igual, perdón, .pack 220 00:29:09,160 --> 00:29:13,849 el site, ¿dónde quiero que me lo ponga? 221 00:29:13,970 --> 00:29:18,750 pues le puedo poner en el tk.write 222 00:29:18,750 --> 00:29:22,490 vale, y ahora hacemos alguna prueba 223 00:29:22,490 --> 00:29:27,970 con una pregunta que me hizo Andrés 224 00:29:27,970 --> 00:29:30,950 en clase 225 00:29:30,950 --> 00:29:35,529 vale, yo le digo el fill, me lo vas a rellenar en bot 226 00:29:35,529 --> 00:29:45,789 y el stand en este caso sí que quiero que siempre se esté expandiendo así que 227 00:29:45,789 --> 00:29:50,210 esto lo pasó a ti vale entonces vamos a hacer alguna 228 00:29:50,210 --> 00:29:55,029 proyección ya con esto primero compruebo que esto está está bien tal cual lo 229 00:29:55,029 --> 00:29:59,609 tengo aquí está vale perfecto ya tengo mis frames para ir dibujando mis 230 00:29:59,609 --> 00:30:08,170 diferentes opciones genial vale hasta ahora como 231 00:30:08,170 --> 00:30:37,660 En este caso el frame principal se me está expandiendo a lo alto y a lo ancho, genial, perfecto, vamos a ver si, que pasaría si no le paso esto, vale, no le paso esto, el side, porque ahora lo que quiero es que me esté ocupando todo el espacio del self que me queda, vale, 232 00:30:37,660 --> 00:30:39,519 Todo el espacio del self que me queda 233 00:30:39,519 --> 00:30:41,619 Entonces, le estoy diciendo 234 00:30:41,619 --> 00:30:44,119 Tú rellénalo en X y en Y 235 00:30:44,119 --> 00:30:45,539 Y además que sea escalable 236 00:30:45,539 --> 00:30:46,779 Vamos a ver qué hace esto 237 00:30:46,779 --> 00:30:49,000 Esto me parece que fue lo que preguntó Andrés 238 00:30:49,000 --> 00:30:49,900 ¿Vale? 239 00:30:50,099 --> 00:30:52,319 Entonces, fijaros que me hace exactamente lo mismo 240 00:30:52,319 --> 00:30:55,200 No me haría falta decirle dónde lo quiero situar 241 00:30:55,200 --> 00:30:59,619 Porque ya le estoy diciendo que me ocupe todo el espacio 242 00:30:59,619 --> 00:31:02,119 En X y en Y 243 00:31:02,119 --> 00:31:03,000 ¿Vale? 244 00:31:03,819 --> 00:31:07,259 ¿Y qué pasaría, por ejemplo, si en vez de bot 245 00:31:07,259 --> 00:31:11,299 le digo que sea solo en y 246 00:31:11,299 --> 00:31:15,910 ¿vale? 247 00:31:17,150 --> 00:31:17,670 pues 248 00:31:17,670 --> 00:31:19,890 no nos pasa 249 00:31:19,890 --> 00:31:21,930 más que esto 250 00:31:21,930 --> 00:31:23,769 ¿qué hace? es un punto 251 00:31:23,769 --> 00:31:26,329 y entonces ese punto lo expande 252 00:31:26,329 --> 00:31:27,869 en y desde el centro 253 00:31:27,869 --> 00:31:28,849 ¿vale? 254 00:31:29,410 --> 00:31:30,829 y me hace esto 255 00:31:30,829 --> 00:31:33,369 bueno, si esto 256 00:31:33,369 --> 00:31:39,289 bueno, os iba a decir si 257 00:31:39,289 --> 00:31:41,450 ahora le paso 258 00:31:41,450 --> 00:31:43,369 el side a la derecha 259 00:31:43,369 --> 00:31:51,609 pues obviamente esa línea la va a pegar a la derecha esto sería la creación de los frames y 260 00:31:51,609 --> 00:31:58,269 este vídeo ya lo dejo aquí en el siguiente vídeo nos dedicamos a meter los widgets dentro de cada 261 00:31:58,269 --> 00:32:06,329 uno de los frames como recordatorio de lo que hemos hecho hay que acordarse de dónde estamos 262 00:32:06,329 --> 00:32:12,650 donde dibujamos esos frames vale siempre dentro de la ventana principal de ese 263 00:32:12,650 --> 00:32:19,089 root que hemos creado en main.py ese root es el self de esta clase es la 264 00:32:19,089 --> 00:32:24,650 instancia de esa clase vale lo demás con lo que he ido jugando 265 00:32:24,650 --> 00:32:30,529 parámetro de el color de fondo altura anchura según esté haciendo uno u otro 266 00:32:30,529 --> 00:32:34,970 tener cuidado con el diseño que queréis hacer porque tendréis que dibujar unos 267 00:32:34,970 --> 00:32:42,930 antes que otros vale y luego el tema de situarlos vale como le pasó hoy o lo 268 00:32:42,930 --> 00:32:48,470 cómodo que es decirle con el teca punto top el teca punto botón el teca punto 269 00:32:48,470 --> 00:32:54,329 left el right como es cómodo decirle si lo quiero arriba abajo a la izquierda o 270 00:32:54,329 --> 00:32:59,269 a la derecha si quiero que se expanda si quiero que me lo rellene en x y en y 271 00:32:59,269 --> 00:33:06,529 vale todo ese tipo de cosas se hace más o menos rápido y al final bueno yo lo 272 00:33:06,529 --> 00:33:11,190 he ido escribiendo pero esto como vayas con el copiar y pegar que vosotros lo 273 00:33:11,190 --> 00:33:19,670 manejáis bien pues lo haces en dos patadas vale bueno un saludo hasta luego