Q:  How do I create a floating palette window?

A:  The tricky thing is to make sure the palette window always appears "in front" of the main window, but not necessarily "on top" of all other windows.  This effect can be achieved by overriding the CreateParams method for your palette form.  For example,

procedure TForm2.CreateParams( var Params: TCreateParams );
begin
  inherited CreateParams( Params );
  with Params do
  begin
    Style := Style or ws_Overlapped;
    WndParent := Form1.Handle;
  end;
end;