c++builder - TBrush bitmap alignment -
मेरे पास एक TPaintBox
नियंत्रण है और TPaintBox-> कैनवास-> gt; ; ब्रश- & gt; बिटमैप
एक तैयार TBitmap
से ग्रिड पैटर्न के साथ। TPaintBox
ग्राहक के माता-पिता ( फ़ॉर्म
) के अंदर गठबंधन होता है।
जब मैं मैन्युअल रूप से TPaintBox->; ()
कॉल करता हूं > नियंत्रण को दोबारा करने के लिए ब्रश पूरी तरह से शीर्ष पर स्थित है, बाएं (0,0 - बाएं चित्र), लेकिन जैसे ही मैं खिड़की का आकार बदलता हूं, ब्रश ऑफसेट परिवर्तन (20,7 - सही चित्र) जब तक कि मैं मैन्युअल रूप से TPaintBox- & gt; अमान्य ()
दोबारा।
मैंने एक मानक ब्रश पैटर्न जैसे कि bsBDiagonal
और bsCross
का उपयोग करने की कोशिश की है, लेकिन ये सभी एक ही है (एक के बीच अलग संरेखण अमान्य ()
कॉल और form
resize)।
मैंने मैन्युअल रूप से सेट करने के लिए Win32 API SetBrushOrgEx ()
का उपयोग करने की कोशिश की ब्रश संरेखण, लेकिन इसका विंडो रीसाइज अपडेट पर कोई प्रभाव नहीं पड़ता है। अगर मैं मैन्युअल रूप से Invalid ()
कॉल करता हूं, तो यह बिल्कुल अच्छी तरह से काम करता है।
अगर मैं अपने onPaint
हैंडलर में एक ब्रेकपॉइंट सेट करता हूं और ब्रश उत्पत्ति क्या है
मैं पृष्ठभूमि को भरने के लिए Canvas-> RectFill ()
का उपयोग करता हूं।
कैनवास- & gt; ब्रश- & gt; शैली = बीएसबीडीओगोनाल; Canvas- & gt; FillRect (क्लाइंट);
कोई भी विचार?
Comments
Post a Comment