Thanks everyone for the feedback — you are right, completely hiding scrollbars and arrows is not really a good UI choice. After reconsidering, I decided not to forcefully remove them.
Instead, I just tweaked the QSS of the popup view to make the dropdown look cleaner (no border, matching background). For example:
QListView *listView = new QListView(combo);
combo->setView(listView);
listView->setStyleSheet(R"(
QListView {
background: #333333;
border: none;
}
)");
This way the popup looks simpler and more in line with my application design, without breaking the standard navigation behavior.