Ok, j'essaie d'ajouter le globe World Wind de la NASA à une fenêtre GUI créée par le constructeur de l'interface graphique NetBeans. Mon code exemple instancie sa propre fenêtre, et le constructeur GUI aimerait que je ne modifie pas les zones nécessaires pour glisser ceci :) J'écrirais le mien, mais cela fait partie d'une application plate-forme NetBeans et contient du code et des annotations gérer encore. Je ne suis pas sûr de savoir comment accomplir cela. Voici le code d'exemple que je voudrais dans la fenêtre:Ajout d'un composant personnalisé au générateur d'interface graphique NetBeans! (WorldWind)
public class WorldWindTest {
public static void main(String[] args) {
//create a WorldWind main object
WorldWindowGLCanvas worldWindCanvas = new WorldWindowGLCanvas();
worldWindCanvas.setModel(new BasicModel());
Position myPoint = Position.fromDegrees(31.12, -88.64, 35000);
//build Java swing interface
JFrame frame = new JFrame("World Wind");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(worldWindCanvas);
frame.setSize(800,600);
frame.setVisible(true);
//create some "Position" to build a polyline
LinkedList<Position> list = new LinkedList<Position>();
// list.add(Position.fromDegrees(i,0.0,i*20000));
}
list.add(Position.fromDegrees(30.12, -85.64, 35000));
list.add(Position.fromDegrees(31.12, -88.64, 35000));
//create "Polyline" with list of "Position" and set color/thickness
Polyline polyline = new Polyline(list);
polyline.setColor(Color.RED);
polyline.setLineWidth(3.0);
//create a layer and add Polyline
RenderableLayer layer = new RenderableLayer();
layer.addRenderable(polyline);
//add layer to WorldWind
worldWindCanvas.getModel().getLayers().add(layer);
}
}
C'est pourquoi je n'utilise pas de builds GUI ... leur "commodité" s'avère souvent être un inconvénient. :) – mre
Oui, je vous entends, mais ils vous un peu chemin de fer dans la plate-forme NetBeans. –
Vous pouvez toujours ajouter un conteneur qui utilise BorderLayout en utilisant la génération de code NetBeans, puis en utilisant du code personnalisé, ajoutez WorldWindowGLCanvas au conteneur dans la position BorderLayout.CENTER. –