2010-06-03 12 views
49

मैं लेबल के टेक्स्ट का रंग कैसे सेट करूं?मैं जावा में एक लेबल (रंगीन पाठ) का रंग कैसे सेट करूं?

myLabel.setText("Text Color: Red"); 
myLabel.??? 

क्या मेरे पास एक लेबल में दो अलग-अलग रंग हो सकते हैं?

उदाहरण यहाँ के लिए:

"Text Color:" काला होने के लिए और "Red" लाल होने के लिए।

उत्तर

103

ज़रूर काम करना चाहिए। अग्रभूमि रंग सेट करने के लिए, बस label.setForeground(Color.RED) का उपयोग करें।

दो रंग सवाल के लिए: आप उदाहरण के लिए अपने लेबल-पाठ में एचटीएमएल इस्तेमाल कर सकते हैं:

frame.add(new JLabel("<html>Text color: <font color='red'>red</font></html>")); 

पैदा करता

enter image description here

एक अन्य समाधान पाठ्यक्रम दो का उपयोग करने की है अलग जेएलबेल, जिनमें से प्रत्येक का अग्रभूमि रंग है।

42

आप अग्रभूमि श्रेणी बदलकर एक JLabel के रंग सेट कर सकते हैं:

JLabel title = new JLabel("I love stackoverflow!", JLabel.CENTER); 

title.setForeground(Color.white); 

जहाँ तक मुझे पता है, दो रंग लेबल आप चाहते हैं बस दो लेबल बनाने के लिए है बनाने के लिए सबसे आसान तरीका है, और सुनिश्चित करें कि वे उचित क्रम में एक दूसरे के बगल में स्थित हो जाएं।

16
JLabel label = new JLabel ("Text Color: Red"); 
label.setForeground (Color.red); 

इस

2

बस क्या @aioobe ऊपर उल्लेख किया ...

कि दृष्टिकोण में आप रंग कोड अपने पाठ के लिए HTML का उपयोग करने पर जोड़ना चाहते थे। हालांकि यह लेबल टेक्स्ट, रंग कोड के सबसे अधिक उपयोग किए जाने वाले तरीकों में से एक है, लेकिन यह करने का सबसे प्रभावी तरीका नहीं है .... इस तथ्य पर विचार करते हुए कि प्रत्येक लेबल HTML को पार्स, प्रतिपादन इत्यादि का नेतृत्व करेगा। यदि आपके पास प्रदर्शित होने के लिए बड़े यूआई फॉर्म हैं, तो प्रत्येक मिलीसेकंड एक अच्छा उपयोगकर्ता अनुभव देने के लिए मायने रखता है।

आप नीचे दिए गए के माध्यम से जाने के लिए और इसे आजमाइए कर सकते हैं ....

Jide ओएसएस (https://jide-oss.dev.java.net/ पर स्थित) स्विंग घटकों के एक बहुत अच्छी राशि के साथ एक पेशेवर खुला स्रोत पुस्तकालय है उपयोग करने के लिए तैयार। उनके पास स्टाइलबेल नामक जेलाबेल का एक बेहतर संस्करण है। वह घटक आपकी समस्या को पूरी तरह से हल करता है ... देखें कि क्या उनके ओपन सोर्स लाइसेंसिंग आपके उत्पाद पर लागू होती है या नहीं।

यह घटक उपयोग करने में बहुत आसान है। यदि आप अपने स्विंग घटकों का डेमो देखना चाहते हैं तो आप www.jidesoft.com (http://www.jidesoft.com/products/1.4/jide_demo.jnlp) पर स्थित अपना वेबस्टार्ट डेमो चला सकते हैं। उनके सभी प्रस्तावों को डेमो किया गया है ... और सबसे अच्छा हिस्सा यह है कि स्टेल्डलेबल की तुलना जेएलएबल (एचटीएमएल और बिना) की तुलना में की जाती है!:-)

पर्फ़ परीक्षण का एक स्क्रीनशॉट पर (http://img267.imageshack.us/img267/9113/styledlabelperformance.png)

6
object.setForeground(Color.green); 

* किसी भी रंग देखा जा सकता है आप चाहते हैं * वस्तु घोषित किया गया पहले

+6

गलत नहीं है - लेकिन कुछ नहीं पहले के उत्तरों की तुलना में जी नया :-) – kleopatra

2

के लिए HTML का उपयोग कर का नुकसान में से एक लेबल तब होते हैं जब आपको एक स्थानीय प्रोग्राम लिखने की आवश्यकता होती है (जिसे कई भाषाओं में काम करना चाहिए)। आपको केवल अनुवाद योग्य पाठ को बदलने के लिए समस्याएं होंगी। या फिर आप अपने अनुवाद में पूरी एचटीएमएल कोड जो बहुत ही अजीब है डाल करने के लिए होगा, मैं भी कह सकते हैं कि बेतुका :)

gui_en.properties:

title.text=<html>Text color: <font color='red'>red</font></html> 

gui_fr.properties:

title.text=<html>Couleur du texte: <font color='red'>rouge</font></html> 

gui_ru.properties:

title.text=<html>Цвет текста: <font color='red'>красная</font></html> 
संबंधित मुद्दे