Thomas won the 200-metre butterfly in two minutes 12.82 seconds one day after taking the 100 butterfly.
"The biggest challenge for me this weekend was swimming multiple events that I don't usually swim," said the 17-year-old. "I'm dealing with the adversity there. I made sure I executed things I wanted to work on take the small victories."
Sinead Russell of Burlington, Ont., won the 100-metre backstroke in 1:01.24.
American Olympic medallist Ryan Lochte wrapped up the meet by winning the 100-metre freestyle in 50.97 seconds. He lost a tight race to Calgary's Russell Wood in the 100-metre backstroke.
"My coach had been bugging me all weekend for not beating Lochte in the 50 back," said Wood, who was timed in 56.14 seconds, just .08 in front of Lochte. "I had to get him somewhere.
"You take the little victories and it definitely feels good for me."
Lochte, a double gold medallist at the London Olympics, won four of the six races he swam. His other loss was in Saturday night's 50-metre backstroke which was won by Calgary's Gleb Suvurov.
Lochte, who was named the male swimmer of the meet, was pleased with the weekend.
"This meet has been really good for me, just getting back up on the blocks and racing," said Lochte, who also set a meet record in the 200 individual medley, the event he holds the world record in. "It doesn't matter what kind of meet it is . . . racing the people next to you, it was a really good experience for me and I'm heading in the right direction.
"There's a lot of things I still need to work on. I have one more month to make sure I tweak all those little things in my races."
A bout of the flu kept two-time Canadian Olympian Savannah King out of the pool Saturday but she battled back to win the 800 metres Sunday.
"Considering I was down and out yesterday, that was a really good race," said the Vernon, B.C., who won the award for Sunday's swim of the day. "I'm proud of myself for getting back up there and being able to finish the meet, even though the middle was really rough.
"It was good to take last night off and then be able to get back up today."
University of Michigan swimmer Emily Brunemann, who set a meet record in the 1,500 metres, was named the female swimmer of the meet. She also was awarded Friday's swim of the day.
Luke Reilly, 17, of the UBC Dolphins was named the meet's male junior swimmer meet while Emily Overholt, 15, also from Vancouver, the top junior female.
In other women's races, Tianna Rissling of Medicine Hat, Alta., won the 50-metre breaststroke in 32.09 seconds while American Natalie Hinds took the 100 freestyle in 55.50 seconds.
The men's winners included Andrew Poznikoff of Drumheller, Alta., taking the 50-metre breaststroke in 29.04; Stefan Milosevic of New Westminster, B.C., was victorious in the 200 butterfly in 2:05.40; and Edmonton's Kier Maitland was tops in the 1,500 metres in 15:50.77.
The Team Alberta crew of Ingrid Wilm, Patricia Pierse, Lili Margitai and Paige Kremer won the women's 4x100-metre relay in 4:13.84.
The men's 4x100 relay was won by the UBC Dolphins team of Kelly Aspinall, Evan Broderick, Allen and Tommy Gossland in 3:51.32.