I think you will have to make the list of maxima yourself, as root only returns one maximum (the first one it finds, see the code here).
You can first use GetMaximumBin to know the value and then loop over all bins using GetBinContent and save/print out the bin centres of all bins with contents equal to the maximum.
Int_t Nbins = hframe->GetNbinsX();
for (Int_t i=1; i<=Nbins; ++i) {
if (hframe->GetBinContent(i)==binmax) cout << "max x = " << hframe->GetXaxis()->GetBinCenter(i) << endl;
}