Página 1 de 1

inventar borda pra dialog?

Enviado: 31 Mar 2023 11:27
por JoséQuintas
Prosseguindo com testes.
dialog1.png
dialog2.png
O W10 deixa o contorno da janela bem fininho.
Sei lá se precisa enfeitar pro usuário enxergar janela....

O primeiro é save screen/restore screen

O segundo é uma nova janela windows, que pode ser movida à vontade.
Podemos dizer que é uma DIALOG MODAL.

Alguma sugestão ?

inventar borda pra dialog?

Enviado: 31 Mar 2023 11:45
por JoséQuintas
modi.png
Com título da janela alterado, dá pra eliminar o interno.

Código: Selecionar todos

   hb_gtInfo( HB_GTI_WINTITLE, "VALORES A RATEAR PELOS PRODUTOS" )

inventar borda pra dialog?

Enviado: 31 Mar 2023 13:14
por JoséQuintas
dialog.png
Vai assim mesmo.
A parte de enfeitar fica pra depois.
Com o novo estilo, TUDO vai ficar disponível, GUI ou não GUI, pode ser da gtwvg, hwgui, hmg, tanto faz.

inventar borda pra dialog?

Enviado: 31 Mar 2023 13:19
por JoséQuintas
Faltou uma coisa: bloquear redimensionamento

Código: Selecionar todos

   oCrt:Resizable := .F.

inventar borda pra dialog?

Enviado: 31 Mar 2023 15:34
por JoséQuintas
Estou fazendo por etapas.

Primeira etapa:

Meu browse usava a janela em uso.
Separando uma janela dessas, o browse ia ficar minúsculo, não ia caber nessa janela.
Então... a primeira coisa foi o browse ter janela própria.

Segunda etapa:

Separar esse tipo de janela em todo aplicativo. Agora elas vão ter seu browse à vontade.

Terceira etapa:

Vou poder usar recursos à vontade, porque cada DIALOG/JANELA cuida do próprio nariz.

Pois é.... tantos anos falando de GTWVG e SÓ AGORA vou usar pra valer.
Poderia usar outra LIB GUI ?
Sim, qualquer uma, mas não estou com saco de ficar pesquisando ou corrigindo, só pra fingir mudança.

Por enquanto, pra criar DIALOGs, serve assim.
Se no futuro quiser mudar, vai ser só alterar cada DIALOG.

inventar borda pra dialog?

Enviado: 04 Abr 2023 14:22
por JoséQuintas
tela.png
Sei lá....
Coloquei dois groupbox...

inventar borda pra dialog?

Enviado: 04 Abr 2023 14:24
por JoséQuintas
Ainda me acostumando depois criar rotinas pra facilitar

Código: Selecionar todos

   oCrt := CrtModal( 6, 14, 14, 44, "VALORES A RATEAR PELOS PRODUTOS" )
   oGroup1 := wvgTstGroupbox():New()
   oGroup1:cText := "Acréscimo na nota/produtos"
   oGroup1:Create( oCrt,, { -1, -1 }, { -7.5, -40 } )

   //ze_WOpen( 0, 0, MaxRow()-1, MaxCol()+1, "Valores a ratear pelos produtos" )
   //@ 1,         2 SAY "Acréscimo na nota/produtos"
   @ Row() + 2, 3 SAY "Valor de Frete.........:" GET mpdValFre PICTURE "@E 999999.99" VALID mpdValFre >= 0
   @ Row() + 1, 3 SAY "Valor de Seguro........:" GET mpdValSeg PICTURE "@E 999999.99" VALID mpdValSeg >= 0
   @ Row() + 1, 3 SAY "Outras Despesas........:" GET mpdValOut PICTURE "@E 999999.99" VALID mpdValOut >= 0
   @ Row() + 1, 3 SAY "Acréscimo em valor.....:" GET mpdValAdi PICTURE "@E 999999.99" VALID mpdValAdi >= 0
   @ Row() + 1, 3 SAY "Acréscimo percentual..%:" GET mpdPerAdi PICTURE "@E 999.99"    VALID mpdPerAdi >= 0
   @ Row() + 1, 3 SAY "Acréscimo(s/imposto)...:" GET mpdValExt PICTURE "@E 999999.99" VALID mpdValExt >= 0
   //@ Row() + 2, 2 SAY "Tira do valor da nota"
   oGroup2 := wvgTstGroupbox():New()
   oGroup2:cText := "Tira do valor da nota"
   oGroup2:Create( oCrt,, { -9, -1 }, { -3.5, -40 } )
   @ Row() + 3, 3 SAY "Desconto em valor nota.:" GET mpdValDes PICTURE "@E 999999.99" VALID mpdValDes >= 0
   @ Row() + 1, 3 SAY "Redução Percentual....%:" GET mpdPerDes PICTURE "@E 999.99"    VALID mpdPerDes >= 0
   //Mensagem( "ESC Sai" )
   READ
   //Mensagem()
   IF LastKey() != K_ESC
      WITH OBJECT cnSQL
         :QueryCreate()
         :QueryAdd( "PDVALFRE", mpdValFre )
         :QueryAdd( "PDVALSEG", mpdValSeg )
         :QueryAdd( "PDVALOUT", mpdValOut )
         :QueryAdd( "PDVALEXT", mpdValExt )
         :QueryAdd( "PDVALDES", mpdValDes )
         :QueryAdd( "PDVALADI", mpdValAdi )
         :QueryAdd( "PDPERDES", mpdPerDes )
         :QueryAdd( "PDPERADI", mpdPerAdi )
         :QUeryAdd( "PDINFALT", LogInfo() )
         :QueryExecuteUpdate( "JPPEDIDO", "IDPEDIDO = " + NumberSQL( nIdPedido ) )
         :ExecuteProcedureNoReturn( "ze_PedidoCalculo", nIdPedido )
      ENDWITH
   ENDIF
   //ze_WClose()
   oCrt:Destroy()

   RETURN Nil
Então.....
Ambiente GUI:
Cria a dialog (CRT), cria os controles windows, fechou a dialog, a dialog destrói tudo.
Nenhuma complicação dos exemplos GTWVG, e controles windows.

A propósito, posso usar LABEL, e textos de qualquer tamanho e cor.
A limitação é apenas manter os GETs, porque EDIT mais atrapalha do que ajuda.

Mas vale a pena trocar SAY por LABEL ? sei lá.... deixar pra pensar depois...