2009-05-11 11 views
6

स्क्रॉलिंग पर ठीक से रीफ्रेश नहीं किया गया है ग्रीटिंग्स,NSTextView

मेरे पास एक बड़ी मात्रा में पाठ के साथ एक NSTextView है। जब भी मैं स्क्रॉल करता हूं, दृश्य ठीक से अपडेट नहीं होता है। कुछ कलाकृतियों हैं जो दृश्य के शीर्ष या निचले हिस्से में रहते हैं। ऐसा प्रतीत होता है कि दृश्य अक्सर खुद को ताज़ा नहीं करता है। यदि मैं बहुत धीरे-धीरे स्क्रॉल करता हूं तो दृश्य अपडेट सही तरीके से होता है। यदि मैं दृश्य में सीमा जोड़ता हूं तो सब कुछ पूरी तरह से काम करता है, सीमाहीन दृश्य वह है जिसमें कोई समस्या है। यहाँ एक स्क्रीनशॉट के लिए एक लिंक है:

http://img216.imageshack.us/img216/8193/picture13s.png

धन्यवाद

+0

क्या कोई यह समझा सकता है कि यह प्रश्न क्यों कम किया गया है? यह मेरे लिए एक उचित सवाल की तरह लगता है। –

+0

मैं काउंटर करने के लिए अपवित्र हूं: पी +1 –

उत्तर

6

क्या आपने setDrawsBackground और copiesOnScrollNSScrollView या NSClipView के लिए संपत्तियां सेट की हैं?

पहली बात यह है मेरा सुझाव है बंद करने की है "ड्रॉ ​​पृष्ठभूमि" NSScrollView की संपत्ति:

[myScrollView setDrawsBackground:NO]; 

नोट इस NSScrollView पर सेट किया जाना चाहिए कि, और नहीं एम्बेडेड NSClipView पर।

documentation से निम्नलिखित अंश प्रासंगिक हो सकता है:

अपने NSScrollView एक NSClipView encloses NSScrollView करने के लिए NO की एक पैरामीटर के साथ एक setDrawsBackground: संदेश भेजने तो साथ NSClipView एक setCopiesOnScroll: संदेश भेजने का जोड़ा प्रभाव पड़ता है NO का पैरामीटर। setDrawsBackground: संदेश को सीधे NSClipView पर भेजने का दुष्प्रभाव दस्तावेज़ दृश्य में "ट्रेल्स" (पिछली ड्राइंग के निहित) की उपस्थिति के रूप में दिखाई देगा।

+1

डाउनवोट क्यों? –

+4

मैं बस इस सटीक समस्या से खुद भाग गया। '[ScrollView setDrawsBackground: YES]' को सेट करना 'आर्टिफैक्ट समस्या को ठीक करें। अन्य समाचारों में, समाधान की खोज करते समय अपना खुद का जवाब ढूंढना बहुत अजीब लग रहा है :) –

2

पाठ क्षेत्र की तरह लग रहा भी स्क्रॉल-क्षेत्र में नहीं है ... क्या आप वाकई कुछ नहीं है यह ओवरलैपिंग कर रहे हैं?

+0

मुझे यकीन नहीं है, नहीं। यदि मैं नीचे स्क्रॉल करता हूं, तो पाठ दिखाई देगा, स्क्रॉल नियंत्रण के नीचे से गठबंधन होगा। कचरा गायब हो जाएगा, पाठ के स्पष्ट प्रतिपादन के साथ बदल दिया। – EightyEight

+0

क्या आपने अपनी xib को फिर से सेट करने का प्रयास किया था? कभी-कभी वह मेरी मदद करता है। –

0

मुझे कुछ समय पहले भी यही परेशानी थी। मुझे याद नहीं है कि मैंने इसे कैसे हल किया।

पर्यवेक्षण एक कस्टम दृश्य है, तो NSTextView को किसी अन्य दृश्य में रखने का प्रयास करें। बस यह देखने के लिए कि क्या होगा।

+0

मैं इसे जाने दूंगा। यह जानकर अच्छा लगा कि मैं इस समस्या के साथ अकेला नहीं हूं। – EightyEight

1

मुझे एक समान समस्या थी - जब एनएसटीक्स्टव्यू किसी अन्य स्क्रॉलव्यू (यानी एनएसटीबल व्यू) में एम्बेडेड होता है तो कलाकृतियों का विकास होता है।

मैं वास्तव में setdrawsbackground पर कर दिया, और उसे फिर से गायब करने के लिए एक अच्छा रंग गयी।

-(void)awakeFromNib{ 
    NSScrollView *scroll = [self enclosingScrollView]; 
    [scroll setBorderType:NSNoBorder]; 
    [scroll setDrawsBackground:YES]; 
    [scroll setBackgroundColor:[NSColor windowBackgroundColor]]; 
} 

एक स्क्रॉलव्हील घटना के साथ संयोजन में यह मैं एक NSTableView में NSTextView उपयोग करते हैं।

-(void)scrollWheel:(NSEvent *)theEvent{ 
    NSScrollView *scroll = [self enclosingScrollView]; 
    [[scroll superview] scrollWheel:theEvent]; 
} 
संबंधित मुद्दे