मैं वर्चुअल स्ट्रिंग पेड़ की एक विशिष्ट पंक्ति में टेक्स्ट का रंग बदलना चाहता हूं। क्या यह संभव है?वर्चुअल स्ट्रिंग पेड़ में पंक्ति के रंग को बदलना संभव है?
उत्तर
OnBeforeCellPaint घटना का उपयोग करें:
procedure TForm1.VirtualStringTree1BeforeCellPaint(Sender: TBaseVirtualTree;
TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect);
begin
if Node.Index mod 2 = 0 then
begin
TargetCanvas.Brush.Color := clFuchsia;
TargetCanvas.FillRect(CellRect);
end;
end;
यह (यदि पंक्तियों एक ही स्तर पर कर रहे हैं) हर दूसरे पंक्ति पर पृष्ठभूमि बदल जाएगा।
क्या होगा अगर मुझे बिल्कुल रंग नहीं चाहिए? जैसे बैक ग्राउंड रंग को हटा दें, मैं थक गया 'TargetCanvas.brush.Style: = bsClear;' लेकिन असफल – MartinLoanel
@ मार्टिन लोनेल आपको पूरे नियंत्रण को पारदर्शी बनाने के लिए बहुत कुछ करने की आवश्यकता होगी। एक अलग प्रश्न के रूप में पूछें और आपको कुछ जवाब मिल सकते हैं या कोई इसे पहले से ही कर सकता है। – Nat
पहले से ही एक रास्ता खोजने के लिए – MartinLoanel
किसी विशिष्ट पंक्ति में टेक्स्ट के रंग को नियंत्रित करने के लिए, OnPaintText ईवेंट का उपयोग करें और TargetCanvas.Font.Color सेट करें।
procedure TForm.TreePaintText(Sender: TBaseVirtualTree; const TargetCanvas:
TCanvas; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType);
var
YourRecord: PYourRecord;
begin
YourRecord := Sender.GetNodeData(Node);
// an example for checking the content of a specific record field
if YourRecord.Text = 'SampleText' then
TargetCanvas.Font.Color := clRed;
end;
ध्यान दें कि इस विधि को TreeView में प्रत्येक सेल के लिए बुलाया जाता है। नोड पॉइंटर एक पंक्ति के प्रत्येक सेल में समान है। तो यदि आपके पास एकाधिक कॉलम हैं और एक विशिष्ट कॉलम की सामग्री को भरने वाली पूरी पंक्ति के लिए रंग सेट करना चाहते हैं, तो आप दिए गए नोड का उपयोग उदाहरण कोड में कर सकते हैं।
एक विशिष्ट पंक्ति में पाठ का रंग बदलने के लिए, OnDrawText घटना इस्तेमाल किया जा सकता है जिसमें आप वर्तमान TargetCanvas.Font.Color संपत्ति बदल जाते हैं।
नीचे कोड डेल्फी XE 1 और आभासी treeview 5.5.2 (http://virtual-treeview.googlecode.com/svn/branches/V5_stable/)
type
TFileVirtualNode = packed record
filePath: String;
exists: Boolean;
end;
PTFileVirtualNode = ^TFileVirtualNode ;
procedure TForm.TVirtualStringTree_OnDrawText(Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode;
Column: TColumnIndex; const Text: UnicodeString; const CellRect: TRect; var DefaultDraw: Boolean);
var
pileVirtualNode: PTFileVirtualNode;
begin
pileVirtualNode:= Sender.GetNodeData(Node);
if not pileVirtualNode^.exists then
begin
TargetCanvas.Font.Color := clGrayText;
end;
end;
- 1. टैब्यूलर (* | x) में पंक्ति रंग बदलना?
- 2. स्क्रॉलबार का रंग बदलना संभव है?
- 3. जेफ्रीचार्ट: क्या बार रंग बदलना संभव है?
- 4. रनटाइम पर जेएलिस्ट पंक्ति रंग बदलना
- 5. एक स्ट्रिंग को एक शब्दकोश के साथ बदलना संभव है?
- 6. क्या एंड्रॉइड में चयनित टैब का रंग बदलना संभव है?
- 7. क्या वर्चुअल मेमोरी पेज आकार बदलना संभव है?
- 8. एनएसटीबल व्यू एक पंक्ति के लिए पाठ रंग बदलना
- 9. क्या पेड़ घूर्णन का उपयोग करके एक बीएसटी को दूसरे में बदलना हमेशा संभव है?
- 10. सामग्री लोड करने से पहले WebBrowser नियंत्रण के पृष्ठभूमि रंग को बदलना संभव है?
- 11. पीआईएल में एक ही रंग को बदलना?
- 12. Matplotlib: धुरी के रंग को बदलना
- 13. क्या सीएसएस का उपयोग कर पृष्ठभूमि रंग के आधार पर टेक्स्ट रंग बदलना संभव है?
- 14. RichTextBox में कुछ पंक्ति के पृष्ठभूमि रंग को कैसे बदलें?
- 15. LINQ में खोज विधि को बदलना संभव है?
- 16. पायथन में फ़ंक्शन के रिप्रर को बदलना संभव है?
- 17. बूटस्ट्रैप के फॉर्म रंग बदलना
- 18. क्या डमी पंक्ति बनाये बिना UITableView में प्लेसहोल्डर पंक्तियों की ऊंचाई को बदलना संभव है?
- 19. क्या रेटिंगबार दिशा को बदलना संभव है?
- 20. टेक्स्ट रंग ऑनक्लिक बदलना
- 21. पिक्सेल रंग बदलना पायथन
- 22. जेटीबल सेल रंग बदलना
- 23. क्या UIKeyboard को देखते हुए UITextInputTraits को बदलना संभव है?
- 24. यूआईबटन पृष्ठभूमि रंग बदलना
- 25. टेक्स्ट रंग बदलना
- 26. क्या FEATURE_CUSTOM_TITLE के बिना गतिविधि के शीर्षक पट्टी का रंग बदलना संभव है?
- 27. स्ट्रिंग को अमूर्त सिंटैक्स पेड़
- 28. कॉलबैक को एसिंक ब्लॉक में बदलना संभव है?
- 29. क्या जावास्क्रिप्ट में document.activeElement को बदलना संभव है?
- 30. Mercurial में डिफ़ॉल्ट diff उपकरण को बदलना संभव है?
तो साथ काम करता है, अपने प्रश्न का उत्तर है? – Nat