2008-12-10 11 views
6

नेटबीन डेस्कटॉप एप्लिकेशन से अरबी भाषा के लिए मैं अपने जावा स्विंग जीयूआई घटक [दाएं से बाएं] कैसे बना सकता हूं?जावा स्विंग जीयूआई घटक कैसे आरटीएल देखें?

+0

यो मतलब है अंदर पैनल के अंदर घटक, कैसे पाठ प्रदर्शित करने, उदाहरण के लिए एक JLabel में? – OscarRyz

उत्तर

8

तुम सिर्फ उपयोग करने के लिए नहीं है?

लेकर सुनिश्चित नहीं हैं/जहां, हालांकि करना चाहते हैं कि NetBeans के संबंध में।

+2

लिख सकता हूं, एक घटक घटक को बदलने के लिए Component.applyComponentOrientation (..) भी है। –

1

आप संरेखण इस्तेमाल कर सकते हैं, लेकिन यह जटिलताओं को संभाल नहीं होगा यदि आप अंग्रेज़ी अक्षरों या अपने पाठ के भीतर एम्बेडेड नंबर हैं।

यह स्टाइल पाठ विजेट या यहां तक ​​कि एक एम्बेडेड HTML/रिच टेक्स्ट दर्शक किसी प्रकार का उपयोग करने के लिए बेहतर हो सकता है।

मुझे नहीं लगता कि मानक जेएलबेल अन्यथा जटिलताओं को संभाल सकता है।

Component.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT) 

मुझे विश्वास है कि स्विंग घटकों सब पहले से ही RTL के लिए समर्थन है, नहीं है कि वे:

+0

जेएलएबल यूनिकोड अक्षरों को प्रदर्शित करता है। मुझे लगता है कि वे सिस्टम फोंट पर रिले करते हैं और यदि सिस्टम फोंट पत्र प्रदर्शित कर सकते हैं तो सबकुछ ठीक है। उदाहरण के लिए मेरे कंप में मैं "एक्स्ट्रानो" – OscarRyz

5

Component.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT) 

की कॉल चाल करना चाहिए। लेकिन अपने लेआउट में बाएं और दाएं की बजाय स्विंगकॉन्स्टेंट्स लीडिंग और ट्रेलिंग का उपयोग करना सुनिश्चित करें। WEST या EAST के बजाय GridBagConstraints.LINE_START या LINE_END के लिए भी जाता है, और शायद कुछ ऐसे मामले जिन्हें मैं उल्लेख करना भूल गया था।

+0

यह एक अच्छा जवाब है, अधिक सार्थक संरेखण स्थिरांक का उपयोग करने के बारे में जानकारी अन्य लोगों को इसके साथ परेशानी नहीं दी जा सकती है। –

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; 

      } 
     } 
    }