Okay, I was able to get help and got this worked out and working by:

void MainWindow:n_lineEdit_textChanged(const QString &search)
{

QList<QLabel *> labels = findChildren<QLabel *>();
QList<QPushButton *> buttons = findChildren<QPushButton *>();

// handle empty search by showing all buttons and exiting
if (search.isEmpty())
{
foreach (QPushButton *b, buttons)
b->show();
foreach (QLabel *b, labels)
b->show();

return;
}

// search buttons for any matching "search" and hide everything not matching
foreach (QPushButton *b, buttons)

{
if (b->text().contains(search, Qt::CaseInsensitive))
b->show();
else
b->hide();



foreach (QLabel *b, labels)

{
if (b->text().contains(search, Qt::CaseInsensitive))
b->show();
else
b->hide();
}
}
}
I do however have on issue left, if anyone has any ideas. When I search, it searches fine and removes the other buttons and icons, but the search results are not displayed at the top, but in the middle. Any idea how to fix this? I thought it might just be an alignment problem in the scroll area, but I set that to top and left and it didn't change anything. Any ideas? Thanks all!