Я должен сделать инструмент для рисования, и вот моя проблема
Скриншот другого случая, когда возникает проблема
Так что когдафигура переходит в другую панель, поэтому панель с кнопками и панель с параметрами, я хочу, чтобы фигура была ниже этих панелей
JPanel panel_contenu = new JPanel();
panel_contenu.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(panel_contenu);
panel_contenu.setLayout(null);
JPanel panel_dessin = new JPanel();
panel_dessin.setBounds(0, 139, 1257, 831);
panel_contenu.add(panel_dessin);
panel_dessin.setOpaque(true);
JPanel panel_parametre = new JPanel();
panel_parametre.setBorder(new LineBorder(new Color(0, 0, 0), 1, true));
panel_parametre.setBounds(1264, 0, 247, 977);
panel_contenu.add(panel_parametre);
panel_parametre.setLayout(null);
JPanel panel_boutons = new JPanel();
panel_boutons.setBounds(0, 0, 1264, 101);
panel_contenu.add(panel_boutons);
panel_boutons.setLayout(null);
if (cbo_listeobj.getSelectedItem() instanceof Triangle) {
Triangle t = new Triangle();
t = (Triangle) cbo_listeobj.getSelectedItem();
t.deplacer(val_vect_x, val_vect_y);
repaint();
} // this is when i move a figure
public void paint(Graphics g) {
super.paintComponents(g);
Point2D p1 = new Point2D(val_p1_x, val_p1_y);// Commun à toutes les figures
// TRIANGLE
if (Btriangle2) {
Point2D p2 = new Point2D(val_p2_x, val_p2_y);
Point2D p3 = new Point2D(val_p3_x, val_p3_y);
Triangle t = new Triangle(p1, p2, p3);
colltri.add(t);
listeobj.add(t, cbo_listeobj);
Btriangle2 = false;
}
colltri.afficher(g); //this is when it paint the contentPane
btnOk.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
edt_vect_x.setEditable(true);
edt_vect_y.setEditable(true);
btnDepl.setEnabled(true);
if (Btriangle) {
Btriangle2 = true;
Btriangle = false;
val_p1_x = Integer.parseInt(edt_p1_x.getText());
val_p1_y = Integer.parseInt(edt_p1_y.getText());
val_p2_x = Integer.parseInt(edt_p2_x.getText());
val_p2_y = Integer.parseInt(edt_p2_y.getText());
val_p3_x = Integer.parseInt(edt_p3_x.getText());
val_p3_y = Integer.parseInt(edt_p3_y.getText());
repaint();
} // the ok Button display the figures
Так что моя главная проблема - когда вы отображаете или перемещаете фигуруфигура проходит через другие панели и не проходит ниже других панелей, вы видите фигуры, проходящие через панели, как на скриншоте.
Я хочу, чтобы фигура была ниже других панелей, когда они отображаются и когда вы перемещаете фигуру с параметрами.У меня есть 4 панели panel_contenu
, являющиеся панелью содержимого, и другие панели panel_dessin
, panel_parametre
и panel_boutons
.