2011-04-12 7 views
11

चेकबॉक्स चयन मॉडल का उपयोग करके कुछ पंक्ति क्लिक करने पर विधि को कैसे कॉल करें?चेकबॉक्स चयन के साथ जीडब्ल्यूटी सेलटेबल और पंक्ति क्लिक ईवेंट पर

मैं इस तरह चेकबॉक्स का चयन मॉडल सेट कर रहा हूं:

table.setSelectionModel(selectionModel, 
     DefaultSelectionEventManager.<T> createCheckboxManager(0)); 

उत्तर

6

मैं एक समाधान मिल गया! createCheckboxManager() का उपयोग करने के बजाय, createCustomManager()EventTranslator तर्क से गुजरने वाले का उपयोग करें जो CheckboxEventTranslator को बढ़ाता है और translateSelectionEvent विधि का प्रतिनिधिमंडल करता है, केवल सुपर (CheckboxEventTranslator) द्वारा अनदेखा की गई घटनाओं को रोकता है।

स्रोत कोड:

table.setSelectionModel(selectionModel, 
    DefaultSelectionEventManager.createCustomManager(
     new DefaultSelectionEventManager.CheckboxEventTranslator<T>() { 
      @Override 
      public SelectAction translateSelectionEvent(CellPreviewEvent<T> event) { 
       SelectAction action = super.translateSelectionEvent(event); 
       if (action.equals(SelectAction.IGNORE)) { 
        GWT.log("DO WHAT YOU WANT!!!"); 
        return SelectAction.IGNORE; 
       } 
       return action; 
      } 
     } 
    ) 
); 
1

एक समारोह, जिसे आप कॉल बनाएँ,

table.setSelectionModel(selectionModel, ClassName.myMethod(0)); 

static <T> DefaultSelectionEventManager<T> myMethod(int column) { 
    //call whatever functions you want 
    return DefaultSelectionEventManager.<T> createCheckboxManager(column); 
} 
संबंधित मुद्दे