2013-09-30 8 views
5

मॉडल पर नई पंक्तियां जोड़ने के लिए मैं beginInsertRows और endInsertRows() पर कॉल कर रहा हूं। नई अतिरिक्त पंक्तियों को स्क्रॉल करने के लिए दृश्य को कॉन्फ़िगर कैसे करें और इसे चुनें। मैं कुछ संकेत भेजकर ऐसा कर सकता हूं लेकिन शायद क्यूटी के लिए मानक तरीका है।QTableView नई अतिरिक्त पंक्ति

उत्तर

10

अपनी फॉर्म क्लास में एक स्लॉट बनाएं और इसे मॉडल के rowsInserted सिग्नल से कनेक्ट करें। स्लॉट में निम्न शामिल होना चाहिए:

void My_form::model_rows_inserted(const QModelIndex & parent, int start, int end) { 
    view->scrollTo(model->index(start, 0)); 
} 

ध्यान दें कि आप अपने मॉडल से ऐसा नहीं कर सकते (और नहीं)। मॉडल को दृश्य के बारे में कुछ नहीं पता होना चाहिए।

7

view->scrollToBottom();, बेहतर समाधान है, क्योंकि scrollTo metthod का उपयोग कर अगर, कुछ मामलों में नई पंक्ति नहीं पूर्ण कार्य नहीं करेगा दिखाई

+0

यह अगर वहाँ कुछ छंटाई QTableView पर किया जा रहा था। – Shadow9043

संबंधित मुद्दे