Witnesses told Israel's Yedioth Internet Web site the first explosion triggered several other blasts in nearby vehicles that were also carrying rockets and ammunition.
Estimates of the number of dead ranged from seven to 19.
Hamas blamed an Israeli helicopter, but the Israeli military denied involvement and the Palestinian Interior Ministry said the blast was set off by the mishandling of explosives.
The rally was held in the Jebaliya refugee camp, one of the last military-style parades before a ban on flaunting weapons in public — agreed to by all militant groups — takes effect Saturday evening.
Witnesses said participants, including children, crowded around the pickup truck just before the explosion. The witnesses said the truck carried two homemade rockets.
One man, who only gave his first name, Hussam, said he helped pull three men out of the pickup, two of them dead and one still alive. The side of the pickup was charred.
The witness said he saw five dead children nearby. Dozens more were wounded. The Hamas military wing, Izzedine al Qassam, is popular with youngsters and when the pickup with the gunmen arrived at the rally, many crowded around the vehicle.
After the blast, men carried bodies wrapped in blankets and body parts to nearby cars.
At Shifa Hospital in Gaza, doctors treated patients on the emergency room floor because they ran out of beds. Masked Hamas men wheeled in casualties, including children.
The truck was not heavily damaged by the blast.
One witness, Hazem Abu Rashad, 18, said the truck had two rockets in its bed. Three militants rode in the back and at least three more were inside, he said.
"There was smoke all over, and then we saw people in pieces, but we couldn't make out what really happened," he said.
Also Friday, Palestinians temporarily opened the crossing between Gaza and Egypt, taking control of a border for the first time in their history. Palestinians hoped the two-day opening would set a precedent and pressure Israel to reach a permanent border agreement with them.
It was the first time Palestinians crossed the Gaza border without Israeli supervision in 38 years, reports CBS News Correspondent Robert Berger. Israel still wants supervision of the border, fearing that weapons and terrorists could be smuggled across the border. Israeli and Palestinian negotiators are seeking a compromise.
Earlier, Israeli forces killed three Palestinian gunmen in a West Bank raid.