I do have the same problem, but worst. Actually, my renderer function is not called. Anything about this problem below...?
On 23 sep, 01:39, kilaru <[email protected]> wrote: > Thanks for your answer. > > i have implemented as you have said. but i have String[][] for me for > countries, where i am storing (id, value) > > as i am having this store. > Store gridCountriesStore = new SimpleStore(new String[]{"countryid", > "countryName"}, new String[][]); > > and i am updating this store with values in "onFocus" method of > ComboBoxListenerAdapter. and i am getting values in to store as > > // copied this while debugging in the eclipse. > [[1, INDIA], [2, US], [11, UK], [12, Australia], [13, England], [14, > Srilanka], [15, China], [16, West Indies], [17, Asia], [19, South > America], [24, Africa]] > > i am able to see country names when i see int he dropdown. but after > selecting a particular country and tabbing out from there, immediately > id is populated in the grid cell. For Example: if i select England > from dropdown, and tabbed out from there, 13 is displayed in the cell. > > so, i used the below code to solve the problem. but i am getting null > from record.getAsString("countryName"); > > col.setRenderer(new Renderer() { > public String render(Object value, CellMetadata > cellMetadata,Record record, > int rowIndex, int colNum, Store store) { > String name = record.getAsString("countryName"); > return name; > } > > }); > > please help me.. > > On Sep 22, 12:51 pm, Stefano Gargiulo <[email protected]> wrote:> i had the > same problem... it solved it setting a custom render for the cell: > > col.setEditor(cbeditor); > > col.setRenderer(new Renderer() { > > > public String render(Object value, CellMetadata cellMetadata, > > Record record, > > int rowIndex, int colNum, Store store) { > > return (String) > > SharedUIControls.compartIDtoValueMap.get(value.toString()); > > } > > }); > > > where `compartIDtoValueMap` is a static HashMap populed via GWT RPC at > > application startup (and whatever is needed) > > > 2009/9/22 kilaru <[email protected]> > > > > I have EditorGridPanel and in that one of the cells I am showing > > > ComboBox to the user. With the below code combobox is displayed in a > > > cell when I click on a cell. Also I can see list of countries which > > > are retrieved from database. Problem is when I select a country from > > > combobox, and when focus is lost from that combobox, the value of > > > countryPk is displayed instead of country name. Where I am expecting > > > the value of countryPk should be send to server and country name > > > should be displayed to user. > > > > Please help me in this problem. > > > > // Code to add combobox to the gridpanel > > > ---------------------------------------------------- > > > > --------------------------------------------------------------------------- > > > --------------------------------- > > > > ColumnConfig countryConfig = new ColumnConfig("Country", "countryPk", > > > 100); > > > > final String[] countryHeadings = new String[]{"countryPk", > > > "country"}; > > > > final ComboBox countryComboBox = new ComboBox("Select > > > Country","countryPk"); > > > > final Store gridCountriesStore = new SimpleStore(countryHeadings, new > > > String[][]{}); > > > > gridCountriesStore.load(); > > > > countryComboBox .setStore(gridCountriesStore); > > > > countryComboBox .setDisplayField("country"); > > > > countryComboBox .setMode(ComboBox.LOCAL); > > > > countryComboBox .setTriggerAction(ComboBox.ALL); > > > > countryComboBox .setForceSelection(true); > > > > countryComboBox .setValueField("countryPk"); > > > > countryComboBox .setReadOnly(true); > > > > countryComboBox.addListener(new ComboBoxListenerAdapter() { > > > > LookupController lookupController = new > > > LookupController(); > > > > �...@override > > > > public void onFocus(Field field) { > > > > lookupController.updateCountriesComboStore > > > (gridCountriesStore, countryHeadings); > > > > } > > > > }); > > > > countryConfig.setEditor(new GridEditor(countryComboBox)); > > > > countryConfig.setWidth(60); > > > > // > > > > --------------------------------------------------------------------------- > > > --------------------------------- > > > > //Code to get update the countries store > > > ………………………………………………………………………………………….----------------------------------- > > > > --------------------------------------------------------------------------- > > > ------------------------------------ > > > > private LookupServiceAsync service = (LookupServiceAsync) GWT.create > > > (LookupService.class); > > > > public void updateCountriesComboStore(final Store store, final String > > > [] headings) { > > > > GWT.log("Calling getCountries() of LookupServiceImpl", > > > null); > > > > service.getCountries(new AsyncCallback<String[][]>(){ > > > > public void onFailure(Throwable caught) { > > > > GWT.log("Unable to retreive Countries from > > > ServletContext scope", null); > > > > } > > > > public void onSuccess(String[][] result) { > > > > GWT.log("Retrieve Countries from > > > ServletContext scope", null); > > > > StoreCreator.updateStore(store, headings, > > > result); > > > > } > > > > }); > > > > } > > > > //------------------------------------------------------------------------- > > > ------------------------------------ > > > > // Code to update any given store object > > > ---------------------------------------------------------------------- > > > > --------------------------------------------------------------------------- > > > ------------------------------------ > > > > public static void updateStore(final Store store, String[] headings, > > > String[][] data) > > > { > > > > if (store != null) > > > { > > > > Store storeTemp = new SimpleStore(headings, data); > > > > storeTemp.reload(); > > > > store.removeAll(); > > > > store.add(storeTemp.getRecords()); > > > > } > > > > } > > > > --------------------------------------------------------------------------- > > > -------------------------------------------------------- --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "GWT-Ext Developer Forum" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/gwt-ext?hl=en -~----------~----~----~----~------~----~------~--~---
