The Royals managed just two hits off Estrada, who retired his last 10 batters. Estrada finished the spring by pitching 17 consecutive shutout innings.
''He's been outstanding,'' Brewers manager Ron Roenicke said. ''Great command of his fastball. Changeup has been really good. His curveball has been good. His location has been outstanding.''
Lucroy, who struggled at the plate this spring, connected off Kansas City starter Yordano Ventura with two outs in the third inning.
''Ventura has a great arm,'' Roenicke said. ''That stuff, there's not much better than that. To get some runs off of him, I thought that was really good.''
Aramis Ramirez went 1 for 2 with an RBI. Logan Schafer had three hits and two RBIs. Minor leaguer Michael Ratterree hit a solo home run in the seventh.
Kansas City scored two ninth-inning runs off reliever Francisco Rodriguez.
The Brewers finished the spring at 13-18, while the Royals went 12-16-2.
Brewers: Estrada struck out four and didn't walk a batter. He threw 61 pitches, 38 for strikes.
''It's a good feeling, a good way to go into the season,'' Estrada said. ''Now I just have to transfer that into the season and do it where it matters.''
Royals: Ventura allowed four hits and three runs over three innings. He struck out five, walked two and threw a pair of wild pitches.
''He struggled with his command,'' Royals manager Ned Yost said. ''He's always going to have his good stuff but his battle days will be with his command and it was like that today.''
Brewers: RHP Yovani Gallardo will be making his fifth career opening day start on Monday, trailing only Ben Sheets (six) in franchise history. He is 0-2 with a 5.82 ERA in his previous openers.
Royals: James Shields will start the team's season opener on Monday in Detroit, his second consecutive opening day assignment.
Royals: Infielder Jason Donald was assigned to Triple-A Omaha. Catcher Ramon Hernandez was released by the team upon request of his agent after the Royals said the 37-year-old would not make the team.
Brewers: Shortstop Jean Segura, who has been battling shoulder soreness, worked out before Saturday's game, just as he did prior to Friday night's game, leaving manager Ron Roenicke believing that Segura will be ready for the season opener.
''It went well. He made probably 10 to 15 throws and he felt good about it,'' Roenicke said.
Segura, who hasn't played since March 18, is expected to take part in a simulated game at Miller Park on Sunday before being evaluated by the team's medical staff.
Royals: Louis Coleman (bruised finger) and Luke Hochevar (right elbow) were placed on the 15-day disabled list. Infielder Omar Infante took part in a minor league game Saturday and will join the Royals for their workout Sunday in Detroit.
''He played well and felt good,'' Yost said. Infante received a cortisone shot for a bone spur in his right elbow on March 18 and did not travel with the team to Milwaukee.
Brewers: Wily Peralta will pitch a simulated game on Sunday. He's expected to throw about 75 pitches.
Royals: Bruce Chen will make a minor league start on Sunday in Surprise, Ariz. The veteran hurler, who re-signed with Kansas City over the winter, is expected to be limited to 60 pitches.
Brewers third baseman Mark Reynolds' towering fly ball in the fifth inning hit a wire on the roof at Miller Park. The ball fell into left field for a double.