MultiViews en NetBeans Platform parte 2
Página 1 de 1.
MultiViews en NetBeans Platform parte 2
Hemos conocido un poco mas sobre las Multiviews en la plataforma de NetBeans como se comenta en la entrada anterior, para cada vista que se tenga se crea un JPanel y después se asociarán todas las vistas.
Pero al crear un JPanel no contaremos con algunas propiedades o asociaciones que tiene un TopComponent y se preguntarán ¿Si se puede crear una vista con un TopComponent? la respuesta es si y lo veremos a continuación, pero para ello seguiremos la base de la parte 1.
Opcional: Lo mas recomendable para realizar este ejercicio es crear dentro del paquete donde tenemos nuestras vistas un nuevo TopComponent, pero que se maneje un "Editor" como una vista les mostraré como se realiza.
Lo que se necesita conocer:
1. En nuestro editor donde agregamos las vistas EditorPaletaTopComponent implementaremos la interfaz MultiViewElement.
Como realizamos antes agregamos las importaciones correspondientes y los métodos abstractos, debes de tener los siguientes:
getVisualRepresentation()
getToolbarRepresentation()
setMultiViewCallback
canCloseElement()
componentDeactivated()
componentActivated()
componentHidden()
componentShowing()
Nota: Los métodos componentOpened() y componentClosed(), se encuentran ya que son parte de un TopComponent al crearse.
Nos marcará error en algunos métodos, por lo que aquí hay que hacer lo siguiente para que solucionar esto.
2. Quitaremos el arreglo de MultiViewDescription del constructor y lo declararemos al principio de la clase (para poder utilizar la variable de forma global y no local) de tipo privado.
La llenamos como las anteriores y al último nos queda agregar al arreglo la clase de la descripción.
6. Haciendo bien todo el proceso tendremos que al abrir la ventana de EditorPaleta se abrirá un TopComponent independiente con las vistas.
Autor: Viruz
Enlace: MultiViews en NetBeans Platform (Parte 2)
Pero al crear un JPanel no contaremos con algunas propiedades o asociaciones que tiene un TopComponent y se preguntarán ¿Si se puede crear una vista con un TopComponent? la respuesta es si y lo veremos a continuación, pero para ello seguiremos la base de la parte 1.
Opcional: Lo mas recomendable para realizar este ejercicio es crear dentro del paquete donde tenemos nuestras vistas un nuevo TopComponent, pero que se maneje un "Editor" como una vista les mostraré como se realiza.
Lo que se necesita conocer:
- Multiviews en NBP
1. En nuestro editor donde agregamos las vistas EditorPaletaTopComponent implementaremos la interfaz MultiViewElement.
- Código:
public final class EditorPaletaTopComponent extends TopComponent implements MultiViewElement
Como realizamos antes agregamos las importaciones correspondientes y los métodos abstractos, debes de tener los siguientes:
getVisualRepresentation()
getToolbarRepresentation()
setMultiViewCallback
canCloseElement()
componentDeactivated()
componentActivated()
componentHidden()
componentShowing()
Nota: Los métodos componentOpened() y componentClosed(), se encuentran ya que son parte de un TopComponent al crearse.
Nos marcará error en algunos métodos, por lo que aquí hay que hacer lo siguiente para que solucionar esto.
- Código:
@Override
public void componentDeactivated() {
super.componentDeactivated();
}
@Override
public void componentActivated() {
super.componentActivated();
}
@Override
public void componentHidden() {
super.componentHidden();
}
@Override
public void componentShowing() {
super.componentShowing();
}
2. Quitaremos el arreglo de MultiViewDescription del constructor y lo declararemos al principio de la clase (para poder utilizar la variable de forma global y no local) de tipo privado.
- Código:
private MultiViewDescription dsc[] = {
new MultiVista1Descripcion(),
new MultiVista2Descripcion(),
};
- Código:
private TopComponent tc = MultiViewFactory.createMultiView(dsc, dsc[0]);
- Código:
// add(MultiViewFactory.createMultiView(dsc, dsc[0]));
//open();
- Código:
@Override
public void componentOpened() {
tc = MultiViewFactory.createMultiView(dsc, dsc[0]);
tc.open();
}
La llenamos como las anteriores y al último nos queda agregar al arreglo la clase de la descripción.
- Código:
private MultiViewDescription dsc[] = {
new MultiVista1Descripcion(),
new MultiVista2Descripcion(),
new EditorPaletaTopComponentDescripcion()
};
6. Haciendo bien todo el proceso tendremos que al abrir la ventana de EditorPaleta se abrirá un TopComponent independiente con las vistas.
[Tienes que estar registrado y conectado para ver esa imagen]
La Vista 3 es el TopComponent (el editor que se abre) y aunque suene redundante abrir 2 veces el editor solo es de prueba para que vean como se asocia la paleta.[Tienes que estar registrado y conectado para ver esa imagen]
De esta manera sabemos como crear vistas con TopComponent y no solamente con JPanel.Autor: Viruz
Enlace: MultiViews en NetBeans Platform (Parte 2)
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|