O comando PV SET STYLE PROPERTY fixa o valor de propriedade para a folha de estilo cujo número é estilo.
Utilize as constantes do tema PV Propriedades estilo para definir o parâmetro propriedade e as constantes do tema PV Valores estilo para definir o parâmetro valor. A escolha da constante a atribuir ao parâmetro valor depende da propriedade escolhida:
Constante |
Tipo |
Valor |
pv style automatic word wrap |
Inteiro longo |
33 |
pv style based on |
Inteiro longo |
4 |
pv style color back even |
Inteiro longo |
11 |
pv style color back odd |
Inteiro longo |
12 |
pv style color minus even |
Inteiro longo |
17 |
pv style color minus odd |
Inteiro longo |
18 |
pv style color text even |
Inteiro longo |
13 |
pv style color text odd |
Inteiro longo |
14 |
pv style color zero even |
Inteiro longo |
15 |
pv style color zero odd |
Inteiro longo |
16 |
pv style format alpha |
Inteiro longo |
6 |
pv style format bool |
Inteiro longo |
8 |
pv style format date time |
Inteiro longo |
9 |
pv style format forced text |
Inteiro longo |
32 |
pv style format num |
Inteiro longo |
7 |
pv style format picture |
Inteiro longo |
10 |
pv style hidden |
Inteiro longo |
1 |
pv style hor alignment |
Inteiro longo |
29 |
pv style locked |
Inteiro longo |
0 |
pv style rotation |
Inteiro longo |
31 |
pv style spellcheck |
Inteiro longo |
2 |
pv style text bold |
Inteiro longo |
22 |
pv style text condensed |
Inteiro longo |
27 |
pv style text extended |
Inteiro longo |
28 |
pv style text face |
Inteiro longo |
21 |
pv style text font |
Inteiro longo |
19 |
pv style text italic |
Inteiro longo |
23 |
pv style text outline |
Inteiro longo |
25 |
pv style text shadow |
Inteiro longo |
26 |
pv style text size |
Inteiro longo |
20 |
pv style text underline |
Inteiro longo |
24 |
pv style use picture height |
Inteiro longo |
3 |
pv style vert alignment |
Inteiro longo |
30 |
Se quer definir as propriedades das folhas de estilo por padrão, passe uma das constantes do tema PV Estilo valores especiais no parâmetro estilo:
Constante |
Tipo |
Valor |
Comentário |
pv style cells |
Inteiro longo |
-1 |
Folha de estilo por padrão chamada "Células”, aplicada as células. |
pv style col row headers |
Inteiro longo |
-2 |
Folha de estilo por padrão chamada "Cabeçalho e rodapé de página", aplicada ao cabeçalho e ao rodapé de página durante a impressão. |
pv style page footer header |
Inteiro longo |
-3 |
Folha de estilo por padrão chamada "Cabeçalhos de linhas/colunas", aplicado aos cabeçalhos de colunas e de linhas. |
Nota: Estas Folhas de estilo podem ser editadas utilizando o comando Folhas de estilo do menu Formato de 4D View.
Este método permite definir as propriedades de um novo estilo. Neste exemplo, vamos a definir um valor para cada uma das três propriedades de estilos a personalizar:
- A propriedade "alinhamento horizontal" se converterá "na esquerda",
- A propriedade "alinhamento vertical" se converterá em "centrado",
- A propriedade "rotação" se converterá em "90 graus".
ARRAY LONGINT($ArrayProps;3)
ARRAY LONGINT($ArrayValues;3)
C_STRING(255;$StyleName)
ARRAY LONGINT($StyleNumArray;0)
ARRAY STRING(255;$StyleNameArray;0)
C_INTEGER($Index)
C_INTEGER($Position)
$ArrayProps{1}:=pv style hor alignment
$ArrayProps{2}:=pv style vert alignment
$ArrayProps{3}:=pv style rotation
$ArrayValues{1}:=pv value hor alignment left
$ArrayValues{2}:=pv value hor alignment center
$ArrayValues{3}:=pv value rotation 90
$StyleName:="subparagraph"
PV GET STYLE LIST(Area;$StyleNumArray;$StyleNameArray)
If(Find in array($StyleNameArray;$StyleName)=-1)
$Position:=Size of array($StyleNameArray)+1
INSERT IN ARRAY($StyleNameArray;$Position)
INSERT IN ARRAY($StyleNumArray;$Position)
$StyleNameArray{$Position}:=$StyleName
$StyleNumArray{$Position}:=PV Add style(Area;$StyleName)
For($Index;1;Size of array($ArrayProps))
If(PV Get style property(Area;$StyleNumArray{$Position};$ArrayProps{$Index})#$ArrayValues{$Index})
PV SET STYLE PROPERTY(Area;$StyleNumArray{$Position};$ArrayProps{$Index};$ArrayValues{$Index})
End if
End for
Else
ALERT("O estilo'"+$StyleName+"' já está presente na área.")
End if