Proper format for: MicroMenu:HookScript("OnEvent", function(self, event, ...)?

I want to move the MicroMenu, and keep it there… It likes to move back after I set it in place though. So, I am trying to use a HookScript on it, but the button seems oddly unresponsive.

Ive used hookscripts a few times before, but only with my own frames, and never one of Blizzard’s. Is the format or procedure different with their frames/buttons?

MicroMenu:HookScript("OnEvent", function(self, event, ...)
	if event == "PET_JOURNAL_LIST_UPDATE" or event == "UNIT_EXITED_VEHICLE" 
	or event == "UPDATE_OVERRIDE_ACTIONBAR" or event =="CINEMATIC_STOP" 
	or event == "PET_BATTLE_CLOSE"then
		if HasOverrideActionBar() == false and HasVehicleActionBar() == false
		and C_PetBattles.IsInBattle() == false then
			MicroMenu:ClearAllPoints()
			MicroMenu:SetPoint('TOPLEFT', MicroButtonAndBagsBar, 'TOPLEFT', -240, -15)
		end
	end
end)

I guess the question is: what am I doing wrong here?

Assuming Retail, you should be able to do the using Edit Mode in the latest release.