The 31-year old will join the R's on a two-year deal, commencing on July 1, when his current contract with Fulham expires.
The move to Loftus Road will see Johnson reunited with former boss Mark Hughes, who managed the striker during his time at Fulham.
Johnson has impressed at several English clubs, and has a record of scoring at a rate of one goal in every three appearances, with a total of 147 goals in all competitions throughout his career.
"I've worked closely with Mark before and there are also players here that I've played with previously, including Bobby Zamora and Shaun Derry," Johnson told the club's official website.
"Those were factors in me joining, but this is a big, big club and I've spoken to the chairman and Mark, who both have great ambition for QPR, and it's something that I wanted to be a part of.
"Mark was brilliant when I was at Fulham. I'd just come off the back of a rough spell with a knee injury and he guided and helped me through that period.
"He was great to play under. He's a top a manager and has some fantastic staff around him.
Johnson praised Hughes' man management as one of his strongest skills and believes that the former Manchester United striker can cater to his players' needs as an ex-professional himself.
"Being an ex-player, he knows what players want and expect," Johnson explained. "He's excellent with the players. He speaks to them and he's on the same level as them.
"He said it'd be great to team up again and that he was thrilled about the possibility of me joining QPR.
"He told me about the plans for a new training ground and how the club wants to go forward. That really excited me."