Bonjour,
Je souhaite personaliser un JOptionPane et notament mettre une couleur de fond. Cependant, je n'arrive pas à colorier la zone qui contient le TextField ou le TextArea
une idée ?
d'avance merci.
Bonjour,
Je souhaite personaliser un JOptionPane et notament mettre une couleur de fond. Cependant, je n'arrive pas à colorier la zone qui contient le TextField ou le TextArea
une idée ?
d'avance merci.
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
Quel code as tu utilisé pour colorer tout ça ?
Peut être devras tu utilisé JDialog, et personnaliser ça toi même. Cependant, essaye quelque chose du genre :Bonne chance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 monOptionPane.getContentPane().setBackground(Color.yellow);
Yes ce serait bien d'avoir le code source
Voili, voilà:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 JOptionPane jop = null ; JTextArea textArea = new JTextArea(""); JTextField textField = new JTextField(""); JScrollPane scrollArea = new JScrollPane(textArea); scrollArea.setPreferredSize(new Dimension(iWidth, iHeight)); int icon = JOptionPane.QUESTION_MESSAGE ; int iReturn = 0; Icon iIcon = null ; if(sIconName != null) { Image img = loadImage(sIconName); if(img != null) iIcon = new ImageIcon(img); } textField.setPreferredSize(new Dimension(iWidth, iHeight)); // dialog font if(fDialogFont != null) { scrollArea.setFont(fDialogFont); textField.setFont(fDialogFont); textArea.setFont(fDialogFont); } // dialog colors if(cDialogFore != null) { scrollArea.setForeground(cDialogFore); textField.setForeground(cDialogFore); textArea.setForeground(cDialogFore); } if(cDialogBack != null) { scrollArea.setBackground(cDialogBack); textField.setBackground(cDialogBack); textArea.setBackground(cDialogBack); } if(iIcon != null) { if(bMulti) jop = new JOptionPane(new Object[] {sText, textArea},JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION,iIcon); else jop = new JOptionPane(new Object[] {sText, textField},JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION,iIcon); } else { if(bMulti) jop = new JOptionPane(new Object[] {sText, textArea},JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION); else jop = new JOptionPane(new Object[] {sText, textField},JOptionPane.QUESTION_MESSAGE,JOptionPane.OK_CANCEL_OPTION); } jop.setBackground(cDialogBack); jop.setForeground(cDialogFore); for(int i =0; i<jop.getComponentCount();i++) { jop.getComponent(i).setBackground(cDialogBack); } JDialog dialog = jop.createDialog(this, sTitle); if(iX < 0 || iY < 0) dialog.setLocationRelativeTo(formsMain.getFrame()); else dialog.setLocation(iX, iY); dialog.setVisible(true); Object selectedValue = jop.getValue(); if(((Integer)selectedValue).intValue() != JOptionPane.CANCEL_OPTION) { if(bMulti) sReturn = textArea.getText(); else sReturn = textField.getText(); }
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
pas mieuxEnvoyé par Janitrix
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
Salut,
essaye avec setOpaque(false) pour tes composant rétisant.
Ils deviendront, normalement, transparant.
bonne chance
c'est pire avec setOpaque(false).
de plus la zone qui reste en gris est la seule sur laquelle je n'ai pas la main. C'est elle qui affiche le libellé du message.
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
sText est de type JLabel ?
Pour le JTextArea, c'est peut être dû à la présence du JScrollPane, faut voir.
Sinon, je ne vois pas d'autre solution que la création d'un JDialog, et encore, peut être auras-tu le même problème. Bonne chance.
sText est de type String.
Le problème ne vient pas de la scrollarea puisque j'ai exactement le même problème avec le JTextField qui n'a pas de scroll area. (voir image du post initial)
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
Après avoir récupéré récursivement les sous-composants du JOptionPane, j'obtiens bien le background voulu partout
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager