6

NetBeansデスクトップアプリケーションからアラビア語用のJavaSwingGUIコンポーネント[右から左]を作成するにはどうすればよいですか?

4

4 に答える 4

9

あなただけを使用する必要はありません:

Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )

Swing コンポーネントはすべて、すでに RTL をサポートしていると思いますよね。

ただし、netbeans に関しては、どこでどのように行うかはわかりません。

于 2008-12-10T01:17:11.233 に答える
5

の呼び出し

 Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )

トリックを行う必要があります。ただし、レイアウトでは、LEFTとRIGHTの代わりにSwingConstantsLEADINGとTRAILINGを使用してください。同じことが、WESTまたはEASTの代わりにGridBagConstraints.LINE_STARTまたはLINE_ENDにも当てはまります。おそらく、私が言及し忘れたいくつかの同様のケースです。

于 2008-12-10T17:58:42.210 に答える
1

配置を使用することもできますが、テキストに英字や数字が埋め込まれている場合、複雑さに対処できません。

ある種のスタイル付きテキスト ウィジェットや、埋め込まれた HTML/リッチ テキスト ビューアを使用することをお勧めします。

それ以外の場合、標準の JLabels が複雑さを処理できるとは思いません。

于 2008-12-10T00:51:51.767 に答える
0

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;

            }
        }
    }
于 2014-08-10T08:42:26.640 に答える