1) как сделать через visible незнаю, но можно сделать через caption. Т.е. при навидении мышки на зону метки меняем ее текст, при покидании зоны о6нуляем текст. Только нужно AutoSize в False поставить;
Код:
procedure TForm4.Label1MouseEnter(Sender: TObject);
begin
label1.Caption:='aaaa';
end;
procedure TForm4.Label1MouseLeave(Sender: TObject);
begin
label1.Caption:='';
end;
c картинкой поди тоже самое