Página 2 de 2
LABEL com borda
Enviado: 27 Jul 2023 21:08
por JoséQuintas
Sua informação foi maravilhosa, o nome InputWindow
Bastaram alguns segundos !!!!
Em h_ControlMisc.prg
Código: Selecionar todos
FOR i := 1 TO l
LN := 'Label_' + hb_ntos( i )
CN := 'Control_' + hb_ntos( i )
@ ControlRow , 10 LABEL (LN) VALUE aLabels [i] WIDTH nLabelWidth
Essas 4 linhas eram o que eu precisava.
Comecei a testar aqui.
Acho que agora pode decolar.
Valeu.
LABEL com borda
Enviado: 27 Jul 2023 21:36
por JoséQuintas
Uia.....
Com conteúdo, borda e tudo.
Aquelas 4 linhas deram a informação pra resolver tudo de uma vez.
IMPORTANTE: com DEFINE LABEL não aceita do mesmo jeito, era o que eu estava usando antes.
LABEL com borda
Enviado: 28 Jul 2023 11:19
por Fernando queiroz
Quintas em HWGUI eu uso assim:
Código: Selecionar todos
@ 840,506 SAY oLabel25 CAPTION Hb_DTOC(::DATALT, "DD/MM/YYYY") SIZE 154,30 ;
STYLE WS_BORDER+SS_CENTER ;
COLOR 16777215 BACKCOLOR 255 ;
FONT HFont():Add( '',0,-21,400,,,)
LABEL com borda
Enviado: 28 Jul 2023 11:52
por JoséQuintas
Tinha testado com WS_BORDER e não deu.
Meu fonte tá muito louco:
Código: Selecionar todos
IF ! Empty( aItem[ CFG_VTABLE ] )
#ifdef HBMK_HAS_HWGUI
@ nCol2 + ( ( aItem[ CFG_LEN ] + 3 ) * 12 ), nRow2 SAY aItem[ CFG_VOBJ ] CAPTION aItem[ CFG_VVALUE ] OF ;
iif( ::lWithTab, oTab, ::oDlg ) SIZE Len( aItem[ CFG_VVALUE ] ) * 12, 20 COLOR COLOR_FORE ;
TRANSPARENT
#endif
#ifdef HBMK_HAS_HMGE
aItem[ CFG_VOBJ ] := "LabelB" + Ltrim( Str( aItem:__EnumIndex ) )
@ nRow2, nCol2 + ( ( aItem[ CFG_LEN ] + 3 ) * 12 ) LABEL ( aItem[ CFG_VOBJ ] ) ;
PARENT ( ::oDlg ) ;
VALUE aItem[ CFG_VVALUE ] WIDTH Len( aItem[ CFG_VVALUE ] ) * 12 HEIGHT 20 ;
BORDER
#endif
#ifdef HBMK_HAS_OOHG
WITH OBJECT aItem[ CFG_VOBJ ] := TLabel():Define()
:Row := nRow2
:Col := nCol2 + ( ( nLen + 3 ) * 12 )
:Value := aItem[ CFG_VVALUE ]
:Height := 20
:Width := Len( aItem[ CFG_VVALUE ] ) * 12
:Border := .T.
ENDWITH
#endif
Compilo com qualquer coisa.
Testando tudo de uma vez kkk
Isso garante que se houver diferença, é algum detalhe da LIB.
Nota: É igual eu falei: sou principiante, fazendo coisa de principiante, aprendendo ainda, mas desse jeito dá a sensação de que sei tudo, sem saber nada. E tá indo em frente.
LABEL com borda
Enviado: 28 Jul 2023 12:07
por JoséQuintas
Eureka.
O problema em hwgui era porque coloquei TRANSPARENT.
Com TRANSPARENT a borda não sai.
É o mesmo fonte anterior, lá já atende MINIGUI e HWGUI.
Fernando, valeu, já tinha testado isso, mas como a única diferença do meu teste anterior e o seu era o TRANSPARENT removi.
Notaram que interessante: mesmo tópico resolveu o mesmo problema em duas LIBs.
Surgiu um imprevisto em hwgui: com TRANSPARENT a borda some, mas sem TRANSPARENT o fundo fica branco e a letra branca desaparece.
Também tentei tirar a aparência 3D da borda usando STYLE WS_BORDER + BS_FLAT mas não foi. Sem 3D acho que a informação ficaria mais "leve", e sem o fundo branco idem, mas ainda resta a opção de definir cor de fundo igual à cor do form, o que deixaria equivalente a TRANSPARENT.
LABEL com borda
Enviado: 28 Jul 2023 13:09
por JoséQuintas
Acho que dá pra considerar que a parte de visual é comum a todas as LIBs, apesar da solução não ser a mesma.
Só por isso continuando aqui.
Troquei a cor de fundo.
Teoricamente com 3D seria algo mais sofisticado, mas na prática tá parendo que é falha.
Não descobri o que usar, não achei nenhum STYLE ss_ no Windows pra isso.
No VB6 isso era o default, no NET deixou de ser, acho que enxergaram isso.