:: Forum >>

setCurrentRow

I am experiencing the a problem that is just driving me crazy. I am trying to get the datagrid to autoscroll to a certain row using the setCurrentRow method. It is working fine in other programs but not in another one. The setSelectedRows method is highlighting the row but I can not get the grid to auto scroll. If I put an alert before the setCurrentRow to see what the row number, once I press OK it will do the scrolling. When I take the alert back out, it stops working again. Is there any way to trouble shoot this more intelligently to see what is happening.
Stephen
Thursday, June 14, 2007
Here is a test program I was trying to get working and even with this one the row is selected but the grid is not scrolling to row 18. What am I missing?

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="../../../runtime/styles/xp/aw.css" rel="stylesheet" type="text/css"/>
<script language="JavaScript" src="../../../runtime/lib/aw.js"></script>
</head>
<body>

<script>
var myData = [
["MSFT","Microsoft Corporation", "314,571.156", "32,187.000", "55000"],
["ORCL", "Oracle Corporation", "62,615.266", "9,519.000", "40650"],
["SAP", "SAP AG (ADR)", "40,986.328", "8,296.420", "28961"],
["CA", "Computer Associates Inter", "15,606.335", "3,164.000", "16000"],
["ERTS", "Electronic Arts Inc.", "14,490.895", "2,503.727", "4000"],
["SFTBF", "Softbank Corp. (ADR)", "14,485.840", ".000", "6865"],
["VRTS", "Veritas Software Corp.", "14,444.272", "1,578.658", "5647"],
["SYMC", "Symantec Corporation", "9,932.483", "1,482.029", "4300"],
["INFY", "Infosys Technologies Ltd.", "9,763.851", "830.748", "15400"],
["INTU", "Intuit Inc.", "9,702.477", "1,650.743", "6700"],
["ADBE", "Adobe Systems Incorporate", "9,533.050", "1,230.817", "3341"],
["PSFT", "PeopleSoft, Inc.", "8,246.467", "1,941.167", "8180"],
["SEBL", "Siebel Systems, Inc.", "5,434.649", "1,417.952", "5909"],
["BEAS", "BEA Systems, Inc.", "5,111.813", "965.694", "3063"],
["SNPS", "Synopsys, Inc.", "4,482.535", "1,169.786", "4254"],
["CHKP", "Check Point Software Tech", "4,396.853", "424.769", "1203"],
["MERQ", "Mercury Interactive Corp.", "4,325.488", "444.063", "1822"],
["DOX", "Amdocs Limited", "4,288.017", "1,427.088", "9400"],
["CTXS", "Citrix Systems, Inc.", "3,946.485", "554.222", "1670"],
["KNM", "Konami Corporation (ADR)", "3,710.784", ".000", "4313"]
];

var myRow = ["MSFT","Microsoft Corporation", "314,571.156", "32,187.000", "55000"]

var myHeaders = ["Ticker", "Company Name", "Market Cap.", "$ Sales", "Employees"];

var obj = new AW.UI.Grid;
obj.setId("myGrid");
obj.setCellText(myData);
obj.setHeaderText(myHeaders);
obj.setColumnCount(5);
obj.setRowCount(20);
obj.setCurrentSelection("row");
obj.setSelectedRows([18]);
obj.setCurrentRow(18);
obj.refresh();
document.write(obj);
</script>
Stephen
Friday, June 15, 2007
Searching the forum for "SetCurrentRow" gives this thread at top. ||-)
HTH
javascript.forum.11271.5/add-a-row-oddities.html
Carlos
Friday, June 15, 2007
Auto-scroll currently works only after the grid is written into the page. You can either set scrollTop explicitly, or set current/selected row after timeout -

var obj = new AW.UI.Grid;
obj.setId("myGrid");
obj.setCellText(myData);
obj.setHeaderText(myHeaders);
obj.setColumnCount(5);
obj.setRowCount(20);
obj.setSelectionMode("single-row");
document.write(obj);

window.setTimeout(function(){
    obj.setSelectedRows([18]);
    obj.setCurrentRow(18);
});
Alex (ActiveWidgets)
Friday, June 15, 2007
Thanks Carlos and Alex,

It works like a charm now.

Stephen
Stephen
Friday, June 15, 2007

This topic is archived.


Back to support forum

Forum search