java jni框架_Java-在调整JNIN框架时出现的问题

在一个

previous SO question

我说的是一些关于MDI体系结构的问题。我现在在调整我的JinternalFrame的大小时遇到了另一个问题。这是

a short video

这说明了这一点。

我有一个班:干部,基本上是我的金牛座。

public class Cadre extends JInternalFrame

{

/** Largeur par d'une fenêtre interne */

private int width;

/** Hauteur d'une fenêtre interne */

private int height;

/** Titre d'une fenêtre interne */

private String title;

/** Toile associée à la fenêtre interne */

private Toile toile;

/** Permet de compter le nombre de fenêtres internes ouvertes */

static int frameCount = 0;

/** Permet de décaler les fenêtres internes à l'ouverture */

static final int xDecalage = 30, yDecalage = 30;

public Cadre()

{

super("Form # " + (++frameCount),

true, //resizable

true, //closable

true, //maximizable

true);//iconifiable

// Taille de la fenêtre interne par défaut

width = 500;

height = 500;

// Titre par défaut

title = "Form # " + (frameCount);

// On associe une nouvelle toile à la fenêtre

toile = new Toile();

this.setContentPane(toile);

// On spécifie le titre

this.setTitle(title);

// Taille de chaque form par défaut

this.setSize(width, height);

// Permet d'ouvrir les frames de manière décalée par rapport à la dernière ouverte

this.setLocation(xDecalage * frameCount, yDecalage * frameCount);

}

}

这是包含所有jinternalframe的jframe:

public class Fenetre extends JFrame

{

/** Titre de la fenêtre principale */

private String title;

/** Largeur de la fenêtre */

private int width;

/** Hauteur de la fenêtre */

private int height;

/** Le menu */

private Menu menu;

/** La barre d'outils */

private ToolBox toolBox;

/** La zone contenant les JInternalFrame */

private JDesktopPane planche;

/** Le pannel comportant la liste des formes à dessiner*/

private Pannel pannel;

/** La liste de fenêtres ouvertes */

private static ArrayList cadres;

public Fenetre(String inTitle, int inWidth, int inHeight)

{

// lecture de la taille de la frame

width = inWidth;

height = inHeight;

// lecture du titre de la fenêtre

title = inTitle;

// On spécifie la taille de la fenêtre ainsi que le titre

this.setSize(width, height);

this.setTitle(title);

// Initialisations des listes de cadres

cadres = new ArrayList();

// Instanciation de la fenêtre

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// On définit un layout pour notre frame

this.setLayout(new BorderLayout());

// On crée la zone supérieure : Menu + ToolBar

JPanel banniere = new JPanel();

banniere.setLayout(new BorderLayout());

// Instanciation d'un menu

menu = new Menu(this);

this.setJMenuBar(menu);

// En haut la ToolBox

toolBox = new ToolBox();

this.add(toolBox, BorderLayout.NORTH);

// Ajout du pannel à gauche

pannel = new Pannel();

this.add(pannel, BorderLayout.WEST);

**// Intialisation de la planche de dessin

planche = new JDesktopPane();

// On ajoute une Internal frame à notre desktop pane

Cadre cadre = new Cadre();

cadre.setVisible(true);

planche.add(cadre);

try {

cadre.setSelected(true);

}

catch (PropertyVetoException e) {

e.printStackTrace();

}**

// Pour faire en sorte que le déplacement soit "nice"

planche.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);

// On ajoute le nouveau cadre crée à la liste des cadres

cadres.add(cadre);

// Le contenu principal de la fenêtre est la planche contenant les différentes JInternalFrame

this.getContentPane().add(planche);

this.setVisible(true);

}

}

如您所见,我已经在应用程序的主JFrame中声明了:jDesktoppane。

知道怎么解决这个问题吗?

谢谢您!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值