OVH Cloud OVH Cloud

canvas et menus...

2 réponses
Avatar
vévé
Bonjour !
Mon application, en swing, me pose quelques problèmes quant à
l'interface. voici la-dîte interface :
- une barre de menu remplie de menus eux-même pleins de menuItem...classique
- un grand JTabbedPane qui prend tout le reste de la fenetre.
- on ajoute des éléments au JTabbedPane (quand le user clique sur un
menuitem) : des canvas.
évidemment les canvas en question sont en fait des instances d'une
classe que j'ai définie (donc redefinition de paint() etc), héritant de
canvas.

problème : les canvas du JTabbedPane recouvrent les menus quand on
clique sur un de ces menus. effectivement le popup-menu s'affiche par
dessus le canvas, d'où le problème évident. apparement c'est le
paint(...) de ma classe héritant du canvas qui devrait aussi appeler le
repaint() de la barrre de menu ou d'autre chose : j'ai tout essayé. le
pb est tjs là. what to redraw ?


j'espére avoir été assez clair ;)
merci de prendre le temps de comprendre la situation!

vévé

2 réponses

Avatar
TestMan
Celà ressemble vaguement à du mélange composant lourds/léger (AWT et
Swing en clair)

En Swing on utiliser à la place d'un Canvas une dérivation du JPanel
surchargé sur le "paintComponent" :
http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-JPanel.html

Bon Java2D ..
TM

vévé wrote:

Bonjour !
Mon application, en swing, me pose quelques problèmes quant à
l'interface. voici la-dîte interface :
- une barre de menu remplie de menus eux-même pleins de
menuItem...classique
- un grand JTabbedPane qui prend tout le reste de la fenetre.
- on ajoute des éléments au JTabbedPane (quand le user clique sur un
menuitem) : des canvas.
évidemment les canvas en question sont en fait des instances d'une
classe que j'ai définie (donc redefinition de paint() etc), héritant de
canvas.

problème : les canvas du JTabbedPane recouvrent les menus quand on
clique sur un de ces menus. effectivement le popup-menu s'affiche par
dessus le canvas, d'où le problème évident. apparement c'est le
paint(...) de ma classe héritant du canvas qui devrait aussi appeler le
repaint() de la barrre de menu ou d'autre chose : j'ai tout essayé. le
pb est tjs là. what to redraw ?


j'espére avoir été assez clair ;)
merci de prendre le temps de comprendre la situation!

vévé



Avatar
vévé
merci bcp ! c'est ce que j'ai finit par penser...
je désespérais de résoudre mon bug !

TestMan wrote:
Celà ressemble vaguement à du mélange composant lourds/léger (AWT et
Swing en clair)
Bon Java2D ..
TM