Sure, this is possible.
The simplest version is to prepare your table for a specific number of lines, but show only the first one(s). The button to add an additoinal line will then turn the next line visible. With some smart field naming (such as in myline.n.fieldname (where n is the number of the line), you can show and hide the line with a simple
this.getField("myline.n").display = display.visible ;
without having to show/hide each field of the line.
A bit more sophisticated is, if you have a total line underneath, to move that total line when you show or hide a line, by accordingly changing the rect property of the fields of the line.
The next level in sophistication is to dynamically add fields for a new line (and move totals etc. accordingly.
And even more sophisticated would be to put any text etc. further down the expandable list in fields and do your own pagination.
So, it is up to you to chose how much sophistication you need.
Hope this can help.