also deine 1. Frage versteh ich nicht,
das Centrieren ist einfacher.
Delphi-Quellcode:
if shape1.top<=0
then begin
// und die Zahlenwerte berechnest du hoffentlich mittels
shape1.left:=243; // (form1.clientwidth - shape1.width ) div 2 // evtl mus das - auch ein + sein, das verwechsle ich immer
shape1.Top:=284;// (form1.clientheight - shape1.height ) div 2 // evtl mus das - auch ein + sein, das verwechsle ich immer
end;