REPUBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACION
INSTITUTO UNIVERSITARIO DE TECNOLOGIA INDUSTRIAL
“RODOLFO LOERO ARISMENDI” (IUTIRLA)
EXTENSION BARCELONA
INFORMATICA
DISEÑO DE CLASES Y OBJETOS//LOS
MENÚS PROYECTOS MDI
CON MÁS DE UNA VENTANA.
FACILITADOR: ESTUDIANTE:
ING. JOSE CARDOZO ARIANNA TRILLO
30.427.910
BARCELONA, JUNIO 2022.
Introducción
La programación orientada a objetos es una evolución de la
programación procedural basada en funciones. La POO nos permite
agrupar secciones de código con funcionalidades comunes.
Cuando hablamos de objeto, hacemos referencia a una estructura que
hay en un momento determinado de la ejecución del programa, mientras
que cuando hablamos de clase hacemos referencia a una estructura que
representa a un conjunto de objetos.
En MDI odas las ventanas tienen un Área Cliente, aquí es donde la
mayoría de los programas dibujan imágenes, ubican los controles, etc. A
veces una ventana puede ser todo el área cliente, y veces nada, a veces el
área cliente puede hacerse más pequeña par caber en menús, títulos,
barras de desplazamiento, etc.
3.1. Definición de clases y objetos.
Una clase está formada por los métodos y las variables que definen las
características comunes a todos los objetos de esa clase. Precisamente la
clave de la OOP está en abstraer los métodos y los datos comunes a un
conjunto de objetos y almacenarlos en una clase.
Una clase equivale a la generalización de un tipo específico de objetos.
Una instancia es la concreción de una clase.
Clase X:
En la figura anterior, el objeto A y el objeto B son instancias de la clase
X.
Cada uno de los objetos tiene su propia copia de las variables definidas
en la clase de la cual son instanciados y comparten la misma
implementación de los métodos.
Un objeto es una encapsulación genérica de datos y de los
procedimientos para manipularlos.
Al igual que los objetos del mundo real, los objetos de software tienen un
estado y un comportamiento. El estado de los objetos se determina a
partir de una o más variables y el comportamiento con la implementación
de métodos.
La siguiente figura muestra la representación común de los objetos de
software:
Como se observa en la figura, todos los objetos tienen una parte pública
(su comportamiento) y una parte privada (su estado). En este caso,
hicimos una vista transversal pero desde el mundo exterior, el objeto se
observará como una esfera.
3.2. Declaración de propiedades y funciones.
- Propiedades:
Las propiedades proporcionan la comodidad de los miembros de datos
públicos sin los riesgos que provienen del acceso sin comprobar, sin
controlar y sin proteger a los datos de un objeto. Esto se consigue
mediante los descriptores de acceso: métodos especiales que asignan y
recuperan valores del miembro de datos subyacente. El descriptor de
acceso “set” permite que los miembros de datos se asignen, y el
descriptor de acceso “get” recupera los valores de los miembros datos.
Las propiedades “name” y “age” descriptor de acceso “get” y “set”,
permite que cualquier objeto lea y escriba estas propiedades. En cambio,
a veces esto es conveniente para excluir uno de los descriptores de
acceso. Omitir el descriptor de acceso “set”, , por ejemplo, hace que la
propiedad sea de solo lectura:
De manera alternativa, puede exponer un descriptor de acceso
públicamente pero hacer que el otro sea privado o esté protegido. Para
obtener más información, vea Accesibilidad del descriptor de acceso
asimétrico.
Una vez que se declaren las propiedades, pueden usarse como si fueran
campos de la clase. Esto permite una sintaxis muy natural cuando ambos
obtienen y establecen el valor de una propiedad, como se muestra en las
instrucciones siguientes:
Hay que tener en cuenta que en un método “set” de la propiedad está
disponible una variable “value” especial. Esta contiene el valor que el
usuario ha especificado, por ejemplo:
Tenga en cuenta la sintaxis pura para incrementar la propiedad “Age” es
un objeto “Person”:
Si los métodos “get” y “set” independientes se han usado para modelar
las propiedades, el código equivalente puede tener este aspecto:
El método “ToString” se invalida en este ejemplo:
Hay que tener en cuenta que “ToString” o se usa explícitamente en el
programa. Se invoca de manera predeterminada mediante las llamadas a
“WriteLine”.
- Funciones:
Una declaración de función se usa para crear una función y consta de
tres partes:
1. El nombre de la función.
2. Parámetros opcionales () que se comportan como variables dentro
de la función (los parámetros le indican a la función qué hacer con
los argumentos proporcionales).
3. El bloque de código {} que se ejecutará cuando se llama la
función.
La mayoría de las declaraciones de funciones incluyen una sentencia
return, que le indica a la función que se detenga y envíe el valor a donde
se llamó a la función. Ejemplo:
3.3. Declaración de métodos y eventos.
Un método consta de un encabezado y un cuerpo. Para declarar el
encabezado de un método, basta con escribir el tipo que retorna, seguido
del nombre del método y entre paréntesis la lista de parámetros. Ejemplo:
- void imprimir (); este método no retorna nada y no tiene
parámetros.
- int sumar (int a, int b); este método recibe dos parámetros de tipo
“int” y retorna un “int”.
El cuerpo de un método, está dado por una secuencia de instrucciones
separados por comas, dentro de una llave que abre y otra que cierra { }.
La secuencia puede ser vacía { }.
Para llamar a los métodos:
3.4. Diseño de programación sencillos en Visual [Link].
Programa para el cálculo del sueldo de un operario conociendo la
cantidad de horas trabajadas y el costo por hora.
Module Module1
Sub Main()
Dim horasTrabajadas As Integer
Dim costoHora As Single
Dim sueldo As Single
[Link]("Ingrese Horas trabajadas por el operario:")
horasTrabajadas = [Link]()
[Link]("Ingrese el pago por hora:")
costoHora = [Link]()
sueldo = horasTrabajadas * costoHora
[Link]("El sueldo total del operario es:")
[Link](sueldo)
[Link]()
End Sub
End Module
4.1. Los menús: sus elementos, creación y activación. El control
de los menús.
Visual Studio está constituido por tres tipos de elementos que se
reparten en su zona de representación:
- La parte superior de la ventana principal está compuesta por una
barra de menús y varias barras de herramientas.
- La parte central de la ventana principal contiene la zona de trabajo
en la que es posible visualizar, entre otros, uno o varios
diseñadores visuales, así como ventanas de edición de código.
- Varias ventanas secundarias representan las distintas herramientas
a disposición del desarrollador.
El entorno de trabajo puede gestionarse y adaptarse mediante el uso de
tres técnicas:
el anclado de ventanas,
la ocultación automática de ventanas,
el uso de pestañas.
Las ventanas pueden anclarse a uno de los lados de la ventana principal.
También es posible hacer que una ventana sea flotante, es decir, que esté
posicionada de manera absoluta, sin relación alguna con los elementos de
la interfaz.
El componente “MainMenu” permite diseñar un menú en tiempo de
diseño. Si se agrega este componente al Diseñador de Windows Forms,
el Diseñador de menús permitirá configurar visualmente la estructura del
menú principal. El objeto “MenuItem” representa una opción del menú, a
cualquier nivel.
Se pueden definir ‘Teclas de acceso “Alt”, mediante el ímbolo de ‘&
precediendo a la letra que se subrayará. También se pueden definir
‘Teclas de acceso rápido “Ctrl”, en caso de ser necesarias, mediante la
propiedad Para aplicaciones en las que tenemos varios formularios y un
menú, podemos utilizar la propiedad MDIList que hace que la entrada de
menú, marcada como tal muestre un listado de ventanas abiertas. El
componente “ContextMenu” se utiliza para proporcionar a los usuarios
un menú de fácil acceso para los comandos de uso más frecuente
asociados al objeto seleccionado.
Los elementos de un menú contextual suelen ser un subconjunto de los
elementos de menús principales que aparecen en otros puntos de la
aplicación. Los menús contextuales suelen estar disponibles con un clic
del botón secundario (derecho) del mouse. En los formularios Windows
Forms, se asocian a controles. Para asociar un menú contextual a un
control, establezca la propiedad ContextMenu del control en el
componente ContextMenu. Un solo menú contextual puede estar
asociado a múltiples controles, pero cada control sólo puede tener un
menú contextual.
4.2. Las ventanas en los proyectos MDI (Interfaz de Múltiples
Documentos).
MDI significa en inglés “Múltiple Document Interfaz” y en español
Interfaz de múltiples documentos y sirve para desplegar varios
formularios a partir de un Formulario principal.
La contraparte del MDI, es el SDI que es un Single Document
Interfaz, es decir, cuando el proyecto es un solo formulario o única
interfaz.
En un MDI hay un formulario principal o formulario Padre que
contendrá a los formularios secundarios o formularios hijos.
En este libro se enseñan dos métodos usando dos ejemplos para
crear MDI y ambos tienen igual resultado.
Y la propiedad IsMdiContainer cámbiela a True.
Al hacer esto, el formulario se vuelve de un color más oscuro que el
tradicional.
Agregamos los formularios hijos dando clic derecho en el proyecto
Formulario MDI en el Explorador de soluciones.
Se abrirá el siguiente menú contextual.
Elija Agregar Windows Forms.
Luego se mostrará la siguiente ventana. Damos clic en Agregar; pero
antes debe elegir el nombre del nuevo formulario; En este ejemplo
déjelo como está, [Link] que dicho sea de paso en la
siguiente imagen aparece como [Link] porque es el tercer
formulario que se agrega al proyecto.
En el explorador de soluciones ya aparece el formulario agregado.
Agregamos otro formulario al proyecto pero para conocer otra forma de
hacerlo, lo hacemos desde el siguiente menú:
Nos aseguramos que la propiedad IsMdiContainer de los formularios 2,3
y 4 esté en False y la del formulario uno en True. Esto permitirá que los
primeros queden como contenido (hijos) y el segundo como contenedor
(padre).
Con el Formulario 1 desplegado, agregue un control Menú Strip y
configúrelo (ya sabe cómo) para que quede como en la siguiente imagen.
Al dar clic en los menús correspondientes se mostrarán los formularios
2,3 y 4. El formulario uno no se programó en el menú porque es el
formulario contenedor o principal.
Dé doble clic en la pestaña del menú Formulario 2 para abrir el editor de
código, y escriba las siguientes instrucciones.
[Link]()
Clic en la pestaña Formulario 3 y escriba en el editor de código lo
siguiente: [Link]() y en la pestaña Formulario 4 al abrir el editor
de código, escriba la siguiente instrucción: [Link]()
El código completo quedará así:
Conclusión
Los objetos poseen ciertas propiedades especiales que las distinguen de
las variables corrientes, y es que muchas de ellas pueden ser heredadas
dejando así una mayor facilidad en la programación orientada a objetos.
En las clases de prácticas se conoció nuevos aportes que realiza la
herencia, como mecanismo importante de la POO, en programas
modelados por el docente.
Cuando un formulario secundario MDI tiene un
componente MainMenu (normalmente con una estructura de menú de
elementos de menú) y se abre dentro de un formulario primario MDI que
tiene un componente MainMenu (normalmente con una estructura de
menú de elementos de menú), los elementos de menú se combinan
automáticamente si ha establecido la propiedad MergeType (y
opcionalmente, la propiedad MergeOrder).
Bibliografia
- [Link]
- [Link]
[Link]?codigo=88&punto=&inicio=
- [Link]
general-sobre-formularios-controles-de-formulario-y-activex-en-
una-hoja-de-c%C3%A1lculo-15ba7e28-8d7f-42ab-9470-
ffb9ab94e7c2#:~:text=Los%20controles%20de%20formulario
%20se,controles%20a%20hojas%20de%20gr%C3%A1fico.