Jenson Button again proved to be the master of mixed conditions as he crowned his 200th GP with victory in Budapest.