FT_AREDIT() 2 dimensional array editing function using TBrowse Syntax FT_AREDIT( <nTop>, <nLeft>, <nBottom>, <nRight>, <Array Name>, ; <nElem>, <aHeadings>, <aBlocks> [, <bGetFunc> ] ) -> xElement Arguments <nTop>, <nLeft>, <nBottom>, <nRight> are coordinates for TBrowse <Array Name> is name of 2 dimensional to array edit <nElem> is pointer for element in array <aHeadings> is array of column headings <aBlocks> is array of blocks describing each array element [ <bGetFunc> ] is get editing function for handling individual elements Returns Value of element positioned on when exit FT_AREDIT() The type of this value depends on what is displayed. Description This function allows you to position yourself in an array, add and delete rows with the <F7> and <F8> keys, and pass a UDF with information to edit the individual gets. Examples FT_AREDIT(3, 5, 18, 75, ar, @nElem, aHeadings, aBlocks) This example will allow you to browse a 2 dimensional array But you can't edit it since there is no GetBlock UDF It allows the user to hit ENTER to select an element or ESC to return 0 * This second example shows how to edit a 2 dimensional array * as might be done to edit an invoice LOCAL i, ar[3, 26], aBlocks[3], aHeadings[3] LOCAL nElem := 1, bGetFunc * Set up two dimensional array "ar" FOR i = 1 TO 26 ar[1, i] := i // 1 -> 26 Numeric ar[2, i] := CHR(i+64) // "A" -> "Z" Character ar[3, i] := CHR(91-i) // "Z" -> "A" Character NEXT i * SET UP aHeadings Array for column headings aHeadings := { "Numbers", "Letters", "Reverse" } * Need to set up individual array blocks for each TBrowse column aBlocks[1] := {|| STR(ar[1, nElem], 2) } // prevent default 10 spaces aBlocks[2] := {|| ar[2, nElem] } aBlocks[3] := {|| ar[3, nElem] } * set up TestGet() as the passed Get Function so FT_ArEdit knows how * to edit the individual gets. bGetFunc := { | b, ar, nDim, nElem | TestGet(b, ar, nDim, nElem) } SetColor( "N/W, W/N, , , W/N" ) CLEAR SCREEN FT_AREDIT(3, 5, 18, 75, ar, @nElem, aHeadings, aBlocks, bGetFunc) Source: AREDIT.PRG Author: James J. Orlowski, M.D.
Pingback: FT Functions | Viva Clipper !
Pingback: FT Array Functions | Viva Clipper !
Pingback: NanForum Toolkit | Viva Clipper !