Se for Harbour, deixa a codepage default como EN.
No meu caso, chamar a HMGE no meio do aplicativo fez alterar a codepage pra EN.
Código: Selecionar todos
#if ! defined( __XHARBOUR__ ) && ( ( __HARBOUR__ - 0 ) > 0x030100 )
InitCodePage()
#endif
Moderador: Moderadores

Código: Selecionar todos
#if ! defined( __XHARBOUR__ ) && ( ( __HARBOUR__ - 0 ) > 0x030100 )
InitCodePage()
#endif

Código: Selecionar todos
IF AppUserName() == "JOSEQ"
IF nBrowse == 1
HwguiBrowse( oTBrowse )
ELSE
HmgeBrowse( oTBrowse )
ENDIF
nBrowse := iif( nBrowse == 1, 2, 1 )
RETURN NIL
ENDIF


você já testou com a HMG (Roberto Lopez)?JoséQuintas escreveu:- hmg extended 17.04 alterada

a parte do GET fica assim:1º 100% harbour + tela gráfica PDV 100% WVG (nem parece né - mas é)
Código: Selecionar todos
@ 04 ,66 get mCDPRODUTO picture pCDPRODUTO when empty (mCDPRODUTO) valid fCDPRODUTO_WVG ()
@ 08 ,72 get mQT_VENDA picture pQT_VENDA valid fQT_VENDA_WVG ()
read
Código: Selecionar todos
static function fCDPRODUTO_WVG ()
local ARQUIVO := select ()
LIMPA_MENSAGEM ()
if lastkey () <> K_UP
if empty (mCDPRODUTO)
mostra_listagem_prd_hmg()
select (ARQUIVO)
return (.f.)
endif
select ('DCI10010') // arquivo de produtos já indexado no início do main
if .not. EXISTE (str (mCDPRODUTO,13) )
MsgInfo('C¢digo do Produto n„o cadastrado')
mostra_listagem_prd_hmg()
select (ARQUIVO)
return (.f.)
endif
mDSPRODUTO := left (DSPRODUTO,32)
mVR_UNITAR := VR_PREVEN * (1+(mVR_PERJUR/100))
AAdd( aPaint, { "Label8", {|| Wvt_DrawLabel( 02, 01, mDSPRODUTO, 00, 00, RGB( 220, 220, 220 ) , RGB( 063, 096, 150 ), "Arial" , 30, , , , , .f., .f., .f. ) }, { WVT_BLOCK_LABEL, 01, 02, , } } )
mCD_GRADE := DSUNIDADE
select (ARQUIVO)
endif
returnfunção MOSTRA_LISTAGEM_PRD_HMG() - tambem feita em harbour + HMG:2º harbour + gráficos 100% HMG:
Código: Selecionar todos
static function mostra_listagem_prd_hmg()
define window form_pesquisa;
at 0,0;
width 760;
height 610;
title 'DCI10010 - Produtos';
icon 'icone';
modal;
nosize
define grid grid_pesquisa
parent form_pesquisa
col 0
row 0
width 755
height 580
headers {'Código','Nome','Preço R$'}
widths {140,460,130}
showheaders .F.
nolines .T.
fontname 'courier new'
fontsize 12
backcolor {157,255,255}
fontcolor BLACK
ondblclick mostra_informacao_prd_hmg()
onenter mostra_informacao_prd_hmg()
end grid
on key escape action thiswindow.release
end window
popula_grid_prd_hmg()
form_pesquisa.grid_pesquisa.setfocus
form_pesquisa.grid_pesquisa.value := 1
form_pesquisa.center
form_pesquisa.activate
return(nil)Código: Selecionar todos
static function popula_grid_prd_wvg()
// local ARQUIVO := select ()
delete item all from grid_pesquisa of form_pesquisa
dbselectarea('DCI10010')
DCI10010->(dbgotop())
while .not. eof()
add item {alltrim(str(DCI10010->CDPRODUTO)),alltrim(DCI10010->DSPRODUTO),trans(DCI10010->VR_UNITAR,'@E 999,999.99')} to grid_pesquisa of form_pesquisa
DCI10010->(dbskip())
end
return(nil)
Código: Selecionar todos
static function mostra_informacao_prd_hmg()
local x_codigo := valor_coluna('grid_pesquisa','form_pesquisa',1)
local x_nome := valor_coluna('grid_pesquisa','form_pesquisa',2)
_codigo := val(x_codigo)
_nome := alltrim(x_nome)
mNMPRODUTO:=_nome
form_pesquisa.release // tanto faz esta linha quanto a abaixo o resultado não fica como o esperado.
// form_pesquisa.minimize
eturn(nil)Código: Selecionar todos
function valor_coluna(xObj,xForm,nCol)
local nPos := GetProperty(xForm,xObj,'Value')
local aRet := GetProperty(xForm,xObj,'Item',nPos)
return aRet[nCol]1ª tela: ANTES DA PESQUISA 100% gráficos da WVG↓ 2ª tela: DURANTE A PESQUISA 100% gráficos HMG (após o 1º enter sem digitar nada no campo CÓDIGO)↓ 3ª tela: APÓS ENCONTRAR O PRODUTO e pressionar o ENTER ou DUPLO CLIQUE ↓ Bom, conclusão da brincadeira:Bom, o resultado é espetacular, vejam as 3 telas antes, durante e após a pesquisa

GUI é GUI... console é console....1) no momento de ESC do formulário 100% HMG o controle retorna para o GET 100% harbour perfeitamente. PONTO POSITIVO;
2) quando do DUPLO CLIQUE ou do ENTER para escolher o produto, o FORMULÁRIO 100% HMG fecha mas parece que trava a TELA anterior que contém o GET e o relógio fica travado. Nada mais funciona, a não ser fechar o sistema com o clique no X da janela.

mas vc viu q a tela gráfica desenhada em GTWVG é semelhante à da HMG? o q vejo é que, parece que se a gente fecha o formulário na HMG dá a impressão que acabou tudo. Vi aí no seu exemplo que a HMG-E dá pra desativar o FORM_MAIN, o q não consegui encontrar na HMG.JoséQuintas escreveu:GUI é GUI... console é console....
eu também sinto esta mesma coisa, pois o relógio SHOWTIME() para de funcionar ao retornar.JoséQuintas escreveu:Provavelmente a GTWVG está esperando o retorno da outra JANELA, incluindo teclado e mouse, mas a rotina retornou sem teclado/mouse.

Bom, procurando as variáveis, encontrei em h_init.prg:Vi aí no seu exemplo que a HMG-E dá pra desativar o FORM_MAIN, o q não consegui encontrar na HMG.
Como o nome é sugestivo, procurei mainwindowfirstMEMVAR _HMG_InitCodepage
MEMVAR _HMG_MainWindowFirst
MEMVAR _HMG_MainFormIndex
#xtranslate SET WINDOW MAIN OFF => _HMG_MainWindowFirst := .F.
#xtranslate SET WINDOW MAIN ON => _HMG_MainWindowFirst := .T.


vc quer dizer Dr.Soto que não há possibilidade de usar este recurso no hmg 3.4.4?Claudio Soto escreveu:Es original de hmg oficial y por defecto en hmg.3.4.4 es off

Código: Selecionar todos
case valtype (VALOR) = 'N'
if set (_SET_CONFIRM)
keyboard strtran (str (VALOR),' ','0') + chr (K_ENTER)
else
keyboard strtran (str (VALOR),' ','0')
endifCódigo: Selecionar todos
LOCAL oCrt, nSel
LOCAL aPnt := WvtSetPaint( {} )
LOCAL aPaint := {}
oCrt := WvgCrt():New( , , { 0, 0 }, { MaxRow(), MaxCol() }, , .T. )
oCrt:lModal := .T.
oCrt:resizable := .F.
oCrt:closable := .F.
oCrt:title := "SiCCA v3.6.04 - CONSULTA ARQUIVO - " + NOME_ARQUIVO
// oCrt:icon := hb_DirBase() + "vr_1.ico"
oCrt:Create()
oCrt:show()
AAdd( aPaint, { "Box_V", {|| Wvt_DrawBoxRaised( 2, 2, MaxRow()-4, MaxCol()-3 ) }, NIL, { WVT_BLOCK_BOX, 2, 2, MaxRow()-4, MaxCol()-3 } } )
WvtSetPaint( aPaint )
SetColor( "N/W" )
CLSCódigo: Selecionar todos
oCrt:Destroy()
WvtSetPaint( aPnt )
Claudio Soto escreveu:
Es original de hmg oficial y por defecto en hmg.3.4.4 es off
Confunde um pouco...vc quer dizer Dr.Soto que não há possibilidade de usar este recurso no hmg 3.4.4?