3.2.0

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
June 14,
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
June 15,
Searching the forum for "SetCurrentRow" gives this thread at top. ||-)
HTH
javascript.forum.11271.5/add-a-row-oddities.html
Carlos
June 15,
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)
June 15,
Thanks Carlos and Alex,

It works like a charm now.

Stephen
Stephen
June 15,

This topic is archived.

See also:


Back to support forum