Como alinhar itens de menu à direita

 

Na maioria das aplicações (alto nível) os itens do menu são alinhados a esquerda na barra de menu. Com certeza você já viu aplicações com ao menos um item do menu alinhado a direita. Na maioria dos casos o menu “Help”. Aqui está como alinhar um item do menu (Help, por exemplo) à direita da barra de menu, em aplicações Delphi.

Adicione um MainMenu ao formulário, com alguns itens de menu top level (sem sub itens). Nomeie um item de menu como “HelpMenuItem”. Use o código a seguir, no evento OnCreate do formulário. Execute o projeto e veja que o item “Help” está alinhado à direita na barra de menu.

 

procedure TForm1.FormCreate(Sender: TObject) ;

var

  mii: TMenuItemInfo;

  MainMenu: hMenu;

  Buffer: array[0..79] of Char;

begin

  MainMenu := Self.Menu.Handle;

  { Pega as propriedades do item de menu Help }

  mii.cbSize := SizeOf(mii) ;

  mii.fMask := MIIM_TYPE;

  mii.dwTypeData := Buffer;

  mii.cch := SizeOf(Buffer) ;

  GetMenuItemInfo(MainMenu, HelpMenuItem.Command, false, mii) ;

  { Configura as propriedades do item de menu Help }

  mii.fType := mii.fType or MFT_RIGHTJUSTIFY;

  SetMenuItemInfo(MainMenu, HelpMenuItem.Command, false, mii) ;

end;