locked
multiple rows are getting selected RRS feed

  • Question

  • i have designed a table.when i select a particular row another row should not be highlighted and viceversa. here is my screenshot.tat blue color is the colour when i a select a row..my code is

    if (row == selectedRow)
                sel = true;
            int c = Colors.getRow0Color();
            if (row < 0)
                c = Colors.getHeaderColor();
            else if (sel)
                c = Colors.getSelectionColor();
            else if (row % 2 == 0)
                c = Colors.getRow1Color();
            d.fillRectangle(0, 0, w, h, c);
            String s;
            if (row < 0) {
                d.drawRectangle(-1, 0, w + 1, h, 0);
                s = getColumnName(col);
                d.setFontBold("Dialog", 8);
                d.drawStringC(0, 0, w, s, 0);
            } else {
                d.setFontBold("Dialog", 8);
                s = getColValue(row, col);
                float f = 0;
                if (col > 2 && !s.contains("NA")) {
                    f = Float.parseFloat(s.replace(",", ""));
                }
                TIndex tab = Index.getTable();
                int fn = tab.FieldNumber(colid[1]);
                String ival = tab.Value(row + 1, fn);
                float fival = Float.parseFloat(ival.replace(",", ""));
                switch (col) {
                case 3:
                    if (fival >= f && !s.contains("NA"))
                        d.fillRectangle(0, 0, w, h, 0x008000);
                    break;

                case 4:
                    if (fival >= f && !s.contains("NA"))
                        d.fillRectangle(0, 0, w, h, 0x80ff80);
                    break;
                case 6:
                    if (fival <= f && !s.contains("NA"))
                        d.fillRectangle(0, 0, w, h, 0xff8080);
                    break;

                case 7:
                    if (fival <= f && !s.contains("NA"))
                        d.fillRectangle(0, 0, w, h, 0xa00000);
                    break;
                }
                switch (col) {
                case 0:
                    d.drawStringL(2, 0, w, s, 0);
                    break;
                case 1:
                case 3:
                case 4:
                    d.drawStringR(0, 0, w, s, 0);
                    break;
                case 2:
                    d.drawStringR(0, 0, w, s, s.charAt(0) == '-' ? 0xff0000
                            : 0x008000);
                    break;
                default:
                    d.drawStringR(0, 0, w, s, 0);
                }
            }
        }

     

    Monday, January 30, 2012 12:14 PM

All replies