ATLANTA -- Carlos Gomez had no regrets with showing up Paul Maholm.
Kyle Lohse had no problems shutting out the Atlanta Braves.
Three months after Maholm hit him with a pitch, Gomez was still furious.
"I've been in the league seven years and I know when I get hit on purpose," Gomez said. "I've been hit many times, and I put my head down. I don't make any controversy."
Lohse pitched a two-hitter and the Milwaukee Brewers overcame Gomez's ejection in the first inning to beat the Atlanta Braves 4-0 on Wednesday night.
The NL East champion Braves were shut out for the second time in three nights and have been blanked 17 times, second-most in the league.
Lohse (11-10) struck out five and threw just 22 of 89 pitches for balls. In his first season with Milwaukee, Lohse was pitching for St. Louis when he had his last shutout, a 5-0 victory over Washington on April 21, 2011.
"I had a good slider going, dropped in good curveballs and located the fastball and changeup," Lohse said. "They were very aggressive, and there's nights like this where it works to your advantage."
Gomez made it 1-0 in the first with his 23rd homer, but was ejected without touching home plate during a benches-clearing argument.
As soon as he homered, Gomez stood in the batter's box watching the ball sail into the seats in left field. He stared at Maholm, Atlanta's starter, and flipped his bat.
Freeman, Atlanta's best hitter, was ejected along with reserve catcher Gerald Laird.
Gomez, who was yelling at Maholm as he slowly trotted up the first base line, was still upset that the pitcher hit his leg with an 88 mph fastball in the Brewers' 7-4 home loss to Atlanta on June 23.
"I don't apologize for this," Gomez said. "Just take the pain back. You can see the replay. They hit me for no reason, and I tried to get it back today. It's the only opportunity that I have. That's what I did."
The argument continued as Gomez slowly trotted across first and began jawing with Freeman, who said he told Gomez to "act like he'd been here before" and run the bases.
"If you have a beef with the pitcher, have a beef with the pitcher," Freeman said. "Don't make us get involved. That's us. We're going to back up our pitcher. I'm fine with how everybody handled it."
Gomez touched second and third without incident before McCann, Atlanta's catcher, stood in the third base line about 20 feet from the plate and stopped him.
The benches emptied, and Gomez was ejected for shoving Braves reserve outfielder Reed Johnson and Freeman for pushing a pile of players and coaches.
Dana DeMuth, the third base umpire and crew chief, didn't hesitate to eject Freeman.
"Right when he came in, he went boom with an elbow, which we saw, and it caught the third baseman, (Aramis) Ramirez," DeMuth said. "That right there is just like throwing a punch. That is overaggressive. That, No. 1, calls for an ejection. What we saw out there was the same as we saw (on video). There was nobody else that was overly aggressive other than Gomez, of course."
Gomez never touched home plate, but the Brewers were still credited with a run because McCann was charged with obstructing the runner.
DeMuth added that Laird was ejected for arguing from the dugout after the game restarted.
Logan Schafer took Gomez's spot in center field. Chris Johnson took Freeman's spot at first while second baseman Dan Uggla entered the game for Atlanta and Elliott Johnson moved from second to take Johnson's spot at third.
One run was all Lohse needed. He retired 20 straight batters after Andrelton Simmons led off the first with a bunt single, and threw just 54 pitches, 42 strikes, through the first six innings.
Lohse is 10-4 with a 2.91 ERA over his last 22 starts. He pitched his 10th career complete game, allowing four hits, two starts ago in a 5-1 home victory over Cincinnati on Sept. 13.
"He got into a flow, working quick," Brewers manager Ron Roenicke said. "When you're out in the field playing behind a guy that's doing that, that's what it's all about. That's the ideal game to play behind a guy."
Evan Gattis' two-out single in the seventh gave the Braves their second and last baserunner, but McCann followed with a flyout.
Milwaukee took a 2-0 lead in the fourth when Yuniesky Betancourt singled, advanced to second on a wild pitch, moved to third on Jeff Bianchi's single and scored on Sean Halton's sacrifice fly.
Scooter Gennett singled with two outs in the seventh, moved to second on Lohse's single and scored from second on Norichika Aoki's RBI single to make it 3-0.
All three runs were charged to Maholm (10-11), who gave up eight hits and struck out seven in seven innings.
Scott Downs, the third Atlanta pitcher, gave up an RBI single to Aoki with one out in the ninth to make it 4-0.
Lohse, facing Atlanta for the first time this season, began the night 3-1 with a 4.97 ERA in 10 career starts against the Braves.
Maholm dropped to 5-11 with a 5.07 ERA in 24 career starts against Milwaukee.
NOTES: Betancourt entered the game when Ramirez left midway through the third inning with left knee soreness. ... Rookie RHP Jimmy Nelson will make his first career start when the Brewers visit the New York Mets on Saturday. Nelson, who made his debut on Sept. 6 at the Chicago Cubs, has pitched three scoreless innings in five games this season. ... Nelson is taking the place of RHP Wily Peralta. Milwaukee manager Ron Roenicke said Peralta, who went 11-5 with a 4.37 ERA in 32 starts, has a blister on his right index finger and needs to rest. ... Brewers SS Jean Segura still wants to return for the final weekend, but was unable to run in the outfield before the game because of the wet field. Segura has been sidelined since Sept. 25 with a strained right hamstring.