| 4D v13.4SET FORM SIZE | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v13.4
 SET FORM SIZE 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SET FORM SIZE ( {objeto ;} horizontal ; vertical {; *} ) | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| objeto | cadeia |   | Nome do objeto que indica os limites do formulário | |||||
| horizontal | Inteiro longo |   | Se passada *: margem horizontal (píxels) Se omitida *: largo (píxels) | |||||
| vertical | Inteiro longo |   | Se passada *: margem vertical (píxels) Se omitida *: altura (píxels) | |||||
| * | Operador |   | • Se passado: agregar as margens definidas pelos parâmetros horizontal e vertical (tamanho automático ou baseado em um objeto, se passado um objeto) • Se omitido: utilizar horizontal e vertical como largura e altura do formulário | |||||
O comando FORM SET SIZE lhe permite modificar o tamanho do formulário atual por programação. O novo tamanho é definido pelo processo atual; não está armazenado com o formulário.
 
Como no ambiente Desenho, pode utilizar este comando para definir o tamanho do formulário de três maneiras:
Para maior informação sobre os possíveis redimensionamentos dos formulários, consulte o .
 FORM SET SIZE(horizontal;vertical;*)Neste caso, deve passar as margens (em píxels) que quer adicionar à direita e na parte inferior do formulário em horizontal e vertical.
 FORM SET SIZE(objeto;horizontal;vertical)Neste caso, deve passar as margens (em píxels) que deseja adicionar à direita e na parte inferior do objeto em horizontal e vertical. Não pode passar o parâmetro *.
 FORM SET SIZE(horizontal;vertical)Neste caso, deve passar a largura e a altura (em píxels) do formulário em horizontal e vertical.
O comando FORM SET SIZE modifica o tamanho do formulário, mas também considera as propriedades de redimensionamento. Por exemplo, se a largura mínima de um formulário é 500 píxeles e se o comando define uma largura de 400 píxeles, a nova largura do formulário será de 500 píxeles. 
Igualmente note que este comando não muda o tamanho da janela do formulário (pode redimensionar um formulário sem mudar o tamanho da janela e vice-versa). Para mudar o tamanho da janela do formulário, consulte o comando RESIZE FORM WINDOW.
O exemplo a seguir mostra como colocar uma janela de tipo Explorador. O formulário a seguir é criado no ambiente Desenho:

O tamanho do formulário é “automático”.
A janela é visualizada utilizando o seguinte código:
 $ref:=Open form window([Tabla 1];"Form1";Standard form window;Horizontally Centered;Vertically Centered;*)
 DIALOG([Tabla 1];"Form1")
 CLOSE WINDOWA parte da direita da janela pode ser mostrada ou ocultada clicando na opção aumentar/reduzir:

O método de objeto associado com este botão é o seguinte:
 Case of
    :(Form event=On Load)
       C_BOOLEAN(b1;<>contraido)
       C_LONGINT(margem)
       margen:=15
       b1:=<>contraido
       If(<>contraido)
          FORM SET HORIZONTAL RESIZING(False)
          FORM SET SIZE("b1";margem;margem)
       Else
          FORM SET HORIZONTAL RESIZING(True)
          FORM SET SIZE("tab";margem;margem)
       End if
 
    :(Form event=On Clicked)
       <>contraido:=b1
       If(b1)
  `contraido
          OBJECT GET COORDINATES(*;"b1";$l;$t;$r;$b)
          GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
          SET WINDOW RECT($lf;$tf;$lf+$r+margem;$tf+$b+margem;Current form window)
          FORM SET HORIZONTAL RESIZING(False)
          FORM SET SIZE("b1";margem;margem)
 
       Else
  `expandido
          OBJECT GET COORDINATES(*;"tab";$l;$t;$r;$b)
          GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
          SET WINDOW RECT($lf;$tf;$lf+$r+margem;$tf+$b+margem;Current form window)
          FORM SET HORIZONTAL RESIZING(True)
          FORM SET SIZE("tab";margem;margem)
       End if
 
 End case
	Produto: 4D
	Tema: Formulários
	Número 
        891
        
        
        
	
	Criado por: 4D 2004 
	Renomear: 4D v12
SET FORM HORIZONTAL RESIZING
SET FORM VERTICAL RESIZING