Question

Comment puis-je faire mon GUI Java Swing Components [droite à gauche] pour la langue arabe à partir NetBeans Desktop Application?

Était-ce utile?

La solution

Ne vous suffit d'utiliser:

Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )

Je crois que les composants Swing ont tous déjà un soutien pour RTL, non?

Je ne sais pas comment / où vous souhaitez le faire en ce qui concerne NetBeans, cependant.

Autres conseils

L'appel de

 Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )

devrait faire l'affaire. Mais assurez-vous d'utiliser les SwingConstants avant et arrière au lieu de gauche et droite dans vos mises en page. La même chose vaut pour GridBagConstraints.LINE_START ou LINE_END au lieu d'ouest ou, et probablement des cas similaires que j'oublié de mentionner.

Vous pouvez utiliser l'alignement, mais ce ne serait pas gérer la complexité si vous avez des lettres anglaises ou des chiffres inclus au sein de votre texte.

Il est peut-être préférable d'utiliser une sorte de widget texte de style ou même une visionneuse de texte HTML / enrichies.

Je ne pense pas que JLabels standard peuvent gérer la complexité autrement.

vous pouvez l'utiliser si vous avez des composants à l'intérieur des panneaux à l'intérieur contentPane

        Component[] component = contentPane.getComponents();
    for(int i=0; i<component.length; i++){
        component[i].applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
        Component[] cp = ((Container) component[i]).getComponents();
        for(int j=0; j<cp.length; j++){
            try{
                ((Component) ((JComboBox) cp[j]).getRenderer()).applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
            }catch(Exception e){
                continue;

            }
        }
    }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top