das ist korrekt und dein lösungsvorschlag wäre daher auch eine möglichkeit. allerdings habe ichs mittlerweile über ein array etwas eleganter gelöst.
Code:
$runindex = 0;
my @page;
while (@row = $getHistory->fetchrow_array()) {
$page[$runindex] = $root->new_page;
$page[$runindex]->stringc($font2, 15, 306, 390, "hallo");
$runindex++;
}