2011-04-02 7 views
5

मैं जो एक DataProviders DataDisplay के रूप में मेज जोड़कर और एक ColumnSortHandler बनाने के लिए DataProviders सूची का उपयोग कर और इसी कॉम्पैरेटर द्वारा एक प्रकार से एक CellTable भरता कोड का एक छोटा सा टुकड़ा है ... इसलिए हर बार जब उपयोगकर्ता अगले क्लिक करता है मैं डेटा के अगले सेट के साथ इस तरीके से तालिका को पॉप्युलेट करता हूं। यह सभी बहुत अलग काम करता है जब डेटा के मेरे सेट में तत्वों की संख्या 15 से अधिक है। इस मामले में केवल शीर्ष 15 (ऑर्डर किए गए) तत्व प्रदर्शित होते हैं IE। सेलटेबल की केवल 15 पंक्तियां वर्टिकलडिअलॉग के भीतर दिखाई दे रही हैं। क्या यह कहीं डिफ़ॉल्ट है या मैं इस पंक्ति सीमा को कॉन्फ़िगर कर सकता हूं। मैंने अपने कोड के चारों ओर देखा है और मैं उन स्थानों को देख सकता हूं जहां मैंने एक सूची को तुरंत चालू कर दिया है और यह 10 तत्वों के लिए डिफ़ॉल्ट होगा लेकिन 15 ने मुझे परेशान किया है।क्या जीडब्ल्यूटी सीईटीटीबल्स में 15 पंक्ति सीमा है?

मैं कोड प्रदान कर सकता हूं लेकिन सोचा कि यह के बिना स्मृति को जॉग करेगा पुराने कोड को उबाऊ करने की आवश्यकता है।

बहुत धन्यवाद

टोनी

उत्तर

6

यह एक डिफ़ॉल्ट है हाँ: http://google-web-toolkit.googlecode.com/svn/javadoc/latest/com/google/gwt/user/cellview/client/CellTable.html#CellTable()

Constructs आप बदल सकते हैं 15.

की एक डिफ़ॉल्ट पृष्ठ आकार के साथ एक मेज setPageSize या setVisibleRange के साथ किसी भी समय।

+0

वाह और मेरे हिस्से पर अनुसंधान की कमी के लिए धन्यवाद और खेद है। मैं वास्तव में अपने विशेष कार्यान्वयन के लिए 15 पंक्तियों का आनंद लेता हूं, क्योंकि मेरा डेटा तालिका सामग्री को सॉर्ट नहीं करता है, इसलिए यदि उपयोगकर्ता मेरे डेटा में मानों में परिवर्तन चलाता है तो तालिका पुन: क्रमबद्ध करती है और गायब तत्व सूचीबद्ध होने के लिए स्वयं को बढ़ावा देते हैं टेबल के भीतर। किंडा मेरे लिए अच्छा लगा लेकिन मुझे यह उत्सुक बना दिया कि यह 15 कहां से आया था। धन्यवाद @ थॉमस :) –

0

Thomas Broyer answer में जोड़ना। जब मैं पेजिनेशन नहीं चाहता हूं तो मैं हमेशा अपने CellTables/CellLists को पास करने वाले कोड का उपयोग करता हूं।

public static void setupOnePageList(final AbstractHasData<?> cellTable) { 
    cellTable.addRowCountChangeHandler(new RowCountChangeEvent.Handler() { 
     @Override 
     public void onRowCountChange(RowCountChangeEvent event) { 
      cellTable.setVisibleRange(new Range(0, event.getNewRowCount())); 
     } 
    }); 
} 
संबंधित मुद्दे