Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

05 - Menús y cuadros de selección de archivos - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 24 de marzo de 2026 por Pedro Luis L.

13 visualizaciones

Descargar la transcripción

Bueno, por último, vamos a ver los menús, cómo se crean menús y cómo se abren cuadros de diálogo. 00:00:00
Bueno, me voy aquí a mis ejemplos y he creado aquí un pequeño ejemplo que se llama editor. 00:00:12
Este ejemplo, primero lo voy a ejecutar para que veáis lo que hace. 00:00:18
Bueno, es un pequeño blo de notas. 00:00:25
Aquí pongo hola mundo. 00:00:27
Bueno, aquí yo puedo escribir texto. 00:00:30
veis que tiene como 00:00:32
los distintos menús 00:00:33
para guardar 00:00:36
y si yo cojo y digo que lo guardo 00:00:37
el archivo 00:00:40
digo que es hola.txt 00:00:41
vais a ver que el archivo 00:00:45
pues lo ha guardado 00:00:46
aquí tengo mi hola.txt 00:00:48
y que ha cambiado aquí 00:00:49
el texto 00:00:52
también puedo abrir el archivo 00:00:55
digo aquí open 00:00:57
elijo un archivo 00:00:58
este por ejemplo 00:00:59
abrir, ¿veis? 00:01:01
y veis que me lo ha abierto 00:01:03
¿de acuerdo? 00:01:04
bueno, esto es simplemente un menú 00:01:09
y esto es un paint.exe, no tiene más 00:01:11
¿cómo hago esto? 00:01:13
vale, pues vamos a verlo 00:01:15
me abro mi designer 00:01:17
me abro mi designer 00:01:20
y vamos a ver cómo se crean los menús 00:01:25
me creo en mi main window 00:01:27
y para crear menús 00:01:28
para crear menús no es muy complejo, ¿veis ahí eso que pone? 00:01:29
escriba aquí que lo hemos estado ignorando 00:01:33
está la barra de menú 00:01:34
entonces si hago doble clic pongo el nombre del menú menú archivo y aquí ya me sabe el 00:01:36
menú de archivo pues aquí podría por ejemplo nuevo de acuerdo si os fijáis me va creando ya aquí 00:01:45
el nombre que tiene cada una de estas acciones archivo nuevo pues acción nuevo intenta con lo 00:01:57
que pongo aquí, ponerle el nombre, si no acierta 00:02:02
con el nombre, yo puedo pulsar aquí 00:02:04
y cambiar y ponerlo yo aquí lo que quiera 00:02:06
¿vale? pero aquí como he acertado 00:02:08
pues no hay problema, puedo poner aquí otro que sea abrir 00:02:10
abrir 00:02:12
guardar, ¿no? 00:02:16
y con esto voy creando el menú 00:02:20
aquí podría ser menú, editar 00:02:22
editar 00:02:24
aquí puede ser copiar, ¿no? 00:02:26
pegar 00:02:32
bueno, ahí pueden estar los 00:02:33
distintos elementos. Puedo añadir submenús, ¿vale? Estos para añadir submenús. Yo que 00:02:38
sé. Aquí puede ser opciones, ¿no? Y aquí dentro de opciones le podría meter aquí 00:02:45
otro submenú que fuera lo que sea. Formato y cosas así, ¿vale? Si me voy a la vista 00:02:51
previa, pues veis que están aquí mis menús. Aquí creados. Puedo poner acciones rápidas. 00:03:07
Por aquí hay un sitio. A ver, ¿dónde está? Que no te veo. Shortcut, aquí. El shortcut. 00:03:17
Aquí me dice que presione un ataje de teclado. Pusimos, por ejemplo, CTRL-C y ya, cuando 00:03:29
lo previsualizo 00:03:38
vais a ver que 00:03:39
veis copiar control c 00:03:42
o sea yo puedo seleccionar 00:03:43
el ataje del teclado aquí 00:03:46
en abrir puedo hacer control o 00:03:47
selecciono abrir, busco aquí 00:03:49
busco aquí 00:03:51
el shortcut, a ver donde está 00:03:55
shortcut 00:03:57
shortcut 00:03:58
y puedo ponerlo aquí lo que quiera, puedo ponerle 00:04:00
presionar el ataje del teclado 00:04:03
control o 00:04:05
ya lo tengo 00:04:07
vale, cuando hago la pista 00:04:08
de formulario 00:04:11
me dice, bueno, en abrir cuando pulse 00:04:12
control se me va 00:04:15
a ejecutar lo que yo 00:04:16
conecte aquí a este evento, al evento de abrir 00:04:19
bueno, lo que he hecho aquí en el ejemplo 00:04:21
simplemente es que le he puesto aquí un pen test 00:04:27
ada, test área, este 00:04:29
el test edit 00:04:31
le he puesto aquí 00:04:33
una distribución vertical 00:04:34
y ya está, no he hecho más 00:04:36
bueno, esto lo he colocado un poquito más mejor 00:04:38
pero no he hecho más 00:04:41
vale, si vemos el código fuente 00:04:42
de lo que yo he escrito 00:04:46
aquí está mi main window, pero este lo voy a cerrar 00:04:47
para no confundirnos 00:04:50
con la cosilla que he hecho por aquí 00:04:52
todo esto lo cierro 00:04:55
bueno, pues voy a abrir este 00:04:56
no, este no, sí este 00:04:58
esto lo borro 00:05:00
esto lo abro 00:05:03
vale, este ya es bien hecho 00:05:06
fijaos, al área de texto le llamo 00:05:08
printesarea y aquí en la menús 00:05:10
pues están todos los menús que me ha dado 00:05:12
por ponerlos en inglés 00:05:14
si vamos al código fuente 00:05:15
aquí ya empieza a haber novedades 00:05:18
bueno 00:05:22
os acordáis la base, ¿no? 00:05:24
que decíamos que este código lo vamos a usar 00:05:26
de base, el que poníamos al principio 00:05:28
para el botón, ¿no? 00:05:30
bueno, pues pongo aquí mi base, copio y pego 00:05:31
aquí cargo las bibliotecas 00:05:34
creo mi clase 00:05:37
y la hago derivar de main 00:05:38
mi constructor 00:05:40
llamo al constructor de la clase 00:05:42
padre, bueno aquí he definido una propiedad 00:05:44
que es el nombre del archivo 00:05:46
de momento lo pongo a none 00:05:47
y cargo la interfaz 00:05:49
y conecto los eventos, fijaros que 00:05:51
los eventos del botón 00:05:54
los conectaba con clicket 00:05:56
de acuerdo, con clicket 00:05:57
ahí lo tenéis, con clicket 00:06:00
bueno, pues los eventos del menos son 00:06:01
tiger 00:06:04
son disparadores 00:06:05
o sea, son disparados 00:06:07
pues cojo los distintos 00:06:08
eventos del menú 00:06:10
o sea, todos estos 00:06:13
el actionOpen 00:06:15
este aquí, por ejemplo 00:06:17
o sea, el window.actionOpen 00:06:18
y digo 00:06:21
que cuando se dispare, lo voy a conectar 00:06:23
con 00:06:25
este slot, ¿de acuerdo? 00:06:26
aquí tengo los slots 00:06:29
estos slots son muy simples 00:06:30
ya tengo 00:06:32
los relots que manejan el menú 00:06:34
estos relots son muy simples 00:06:36
estos dos son muy interesantes 00:06:39
el de abrir 00:06:41
y guardar, vamos a ver como funciona 00:06:43
abrir 00:06:45
esto es nuevo 00:06:47
aquí, esto es nuevo 00:06:48
bueno, file dialog 00:06:51
sirve para abrir 00:06:53
los cuadros de diálogo de guardar 00:06:55
y abrir archivos, o sea yo cuando he ejecutado 00:06:57
esto 00:07:00
cuando he ejecutado esto 00:07:00
he dicho file open 00:07:09
esto 00:07:11
se me ha abierto este cuadro de diálogo 00:07:13
pues el cuadro de diálogo 00:07:16
se usa con 00:07:18
esto, con el file dialog 00:07:19
file dialog 00:07:21
este cachito de código 00:07:23
sirve para abrir archivos 00:07:25
este cachito 00:07:27
de código, sirve para abrir archivos 00:07:29
nos vamos a la chuleta 00:07:32
y vamos a decir que 00:07:34
cool file 00:07:37
dialog 00:07:40
abrir 00:07:41
archivos 00:07:44
con 00:07:46
esto 00:07:48
abrir archivos con esto 00:07:49
vale 00:07:53
y guardar 00:07:59
archivos con 00:08:02
se haría con 00:08:03
este otro cachito de código de aquí 00:08:11
ahí 00:08:13
con este otro cachito de código 00:08:14
que tengo aquí 00:08:19
ahí lo tengo, ¿vale? 00:08:20
bueno, esto 00:08:30
estoy invocando 00:08:32
al método de abrir un archivo 00:08:37
esto que pongo aquí 00:08:40
de setWindow, le estoy diciendo que la ventana 00:08:41
principal se bloquee, si aquí 00:08:43
pusiera nada 00:08:45
no se bloquearía 00:08:46
la ventana principal y eso no me interesa 00:08:49
aquí pongo el nombre de la ventana 00:08:52
o sea, aquí veis que pone open file 00:08:54
yo cuando ejecuto 00:08:56
esto 00:08:58
y digo abrir 00:08:58
file open 00:09:01
aquí pone 00:09:04
aquí lo veis que arriba pone open file 00:09:05
este open file que pone aquí es 00:09:07
este texto que yo he puesto 00:09:09
aquí, de acuerdo 00:09:12
este texto que he puesto aquí es open file 00:09:13
bueno, esta es la carpeta donde quiero abrir 00:09:15
digo la carpeta actual y aquí estoy diciendo 00:09:17
que quiero todos los archivos 00:09:19
si busquese la documentación 00:09:21
te explico aquí la forma de poner aquí 00:09:23
que por ejemplo, quieres abrir los 00:09:25
.txt, pues pondrías .txt 00:09:27
y solo abriría 00:09:30
los .txt 00:09:32
solo mostraría los .txt 00:09:32
si pones un asterisco ahí, pues abre todos los archivos 00:09:35
bueno 00:09:38
me devuelve dos valores 00:09:39
el nombre del archivo y el tipo 00:09:41
mejor aquí 00:09:43
me devuelve dos valores, el nombre del archivo 00:09:46
y el tipo 00:09:47
el nombre del archivo si está vacío 00:09:48
es que el usuario ha pulsado 00:09:51
cancelar, o sea, si yo 00:09:53
llego aquí 00:09:55
digo abrir 00:09:55
y pulso cancelar, pues no devuelve 00:09:58
el nombre del archivo, que es lo que me está indicando 00:10:01
aquí, o sea, si el nombre del archivo 00:10:03
es comillas comillas, pues 00:10:05
pues nada, y esto es el tipo del archivo 00:10:07
si es tipo texto, tipo de lo que sea 00:10:09
realmente tipo texto no lo vamos a usar 00:10:10
nos interesa el nombre del archivo 00:10:13
bueno, y ahora ya con el nombre del archivo 00:10:14
ya hago lo que tengo que hacer 00:10:17
Si es abrir, perdón, si es abrir, pues fijaros, aquí en abrir lo que estoy diciendo es, mira, ¿esto ha sido correcto? Venga, pues me abres el archivo, me lo lees y ahora en el plaintext edit le pongo el texto querido del archivo, ya está. 00:10:18
Ah, bueno, digo que el nombre del archivo que estoy quitando es este. 00:10:33
El nombre del archivo lo guardo para cuando pulso guardar. 00:10:41
Cuando pulso guardar, directamente salvo. 00:10:44
Es que cuando pulso guardar... 00:10:47
Fijaos que aquí tengo como dos opciones. 00:10:50
Guardar y guardar como. 00:10:53
Con este abro el cuadro de diálogo y cuando tengo el nombre del archivo, 00:10:55
cuando pulso a salvar, pues guardo con ese nombre que he cogido del cuadro de diálogo. 00:11:00
Y esto ya no tiene más misterio. 00:11:05
Ya tenemos, voy a mostrar aquí el código ya completo para que lo veáis, 00:11:07
ya tenemos todo el mecanismo de guardar y salvar. 00:11:12
Bueno, le he puesto aquí también el método para seleccionar el tipo de letra. 00:11:16
Eso no lo voy a pedir, pero bueno, aquí lo tenéis puesto por curiosidad. 00:11:20
Y también tengo por curiosidad lo de copiar, pegar y demás. 00:11:23
los métodos de copiar, pegar 00:11:28
y deshacer 00:11:31
son tan usados 00:11:33
que es que directamente 00:11:35
dentro del Printex Edit ya están 00:11:36
implementados, o sea, no hace falta que lo implementes tú 00:11:39
es que ya lo tienen sus tripas 00:11:41
con que pongas estas líneas 00:11:43
estas líneas de aquí 00:11:44
pues ya te hace lo de copiar, pegar 00:11:47
y seleccionar el solito 00:11:49
¿vale? pues aquí 00:11:51
mi pequeña introducción a los 00:11:53
menos, os recomiendo que hagáis pues un pequeño 00:11:55
ejemplo de menús, algo sencillo 00:11:57
una pequeña mentalidad 00:11:59
que muestro en los menús 00:12:02
y haga alguna cosita 00:12:03
tonta para practicar 00:12:04
Materias:
Informática
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado básico
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado medio
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado superior
      • Primer Curso
      • Segundo Curso
Subido por:
Pedro Luis L.
Licencia:
Reconocimiento - No comercial - Sin obra derivada
Visualizaciones:
13
Fecha:
24 de marzo de 2026 - 0:10
Visibilidad:
Público
Centro:
IES VILLABLANCA
Duración:
12′ 10″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
101.04 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid