मैंने कक्षा को JXTreeTable
और JXTable
ऑब्जेक्ट्स में उपयोग करने के उद्देश्य से बनाया है क्योंकि मेरे पास इनमें से कई परियोजनाएं हैं।कस्टम टेबलसेलरेंडर/ट्रीटेबलसेलरेंडर तालिका कक्षों को प्रस्तुत नहीं करता है
public class CustomCellRenderer extends JLabel
implements TreeCellRenderer, TableCellRenderer {
@Override
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
setBackground(selected ? new Color(83,142,213) : Color.white);
setForeground(selected ? Color.white : Color.black);
//here is the icon setting code but it's irrelevant to my problem
setText(value != null ? value.toString() : "<null>");
return this;
}
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
setBackground(isSelected ? new Color(83,142,213) : Color.white);
setForeground(isSelected ? Color.white : Color.black);
setText(value != null ? value.toString() : "<null>");
return this;
}
}
और यहाँ कोड है, जहां मैं रेंडरर सेट किया गया है:
jXTreeTableConsumos.setDefaultRenderer(Object.class, new CustomCellRenderer());
jXTreeTableConsumos.setTreeCellRenderer(new CustomCellRenderer());
मैं पृष्ठभूमि और अग्रभूमि नीले और सफेद हो जाते हैं क्रमशः जब एक पंक्ति है उम्मीद कर रहा हूँ तो इस वर्ग के TreeCellRenderer
और TableCellRenderer
इंटरफेस को लागू करता है चयनित। हालांकि यह केवल ट्री तालिका सेल (प्रथम कॉलम), जबकि केवल अग्रभाग परिवर्तन और पृष्ठभूमि बहुत ही चयनित पंक्ति में अन्य कोशिकाओं में सफेद पोस्टरों में क्या होता है:
किसी को भी मुझे बता सकते क्यों कोशिकाओं (हैं कि वृक्ष कोशिकाओं नहीं) उनके पृष्ठभूमि रंग नहीं बदलते हैं?
कोई entendi ला सवाल – nachokk
मैं डॉन समझ में नहीं आता, या तो; क्यों 'ऑब्जेक्ट.क्लास'? _what_ नीले रंग में नहीं बदलता है? कृपया एक प्रश्न [एसएससीसी] (http://sscce.org/) शामिल करने के लिए अपना प्रश्न संपादित करें जो आपके द्वारा वर्णित समस्या का प्रदर्शन करता है। – trashgod