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 pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
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
y
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
- Ciclo formativo de grado básico
- 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