Página 1 de 1
Melhor combinação Visual Lib 2.3 e xHarbour
Enviado: 19 Abr 2007 11:59
por sygecom
Buenas....se alguem poder me dizer qual a melhor versão do xharbour para migrar com a visual lib...fico agradecido...se poderem tb. dar algumas dicas ! tudo é bem vindo.
Obs: Jah estou compilando com a versão xHarbour build 0.99.50 Intl. (SimpLex) em janela tudo bonitinho. soh me deu alguns problema com o Tbrowse q ainda não sei o que é ! e quando entro em algum dbedit() ele custa a abrir a tabela.....
Abraços
Enviado: 19 Abr 2007 17:11
por vailton
Explica melhor o que é "ele custa a abrir a tabela" por favor.
Enviado: 19 Abr 2007 17:26
por sygecom
Primeiramente quero lhe agradecer pelo belo trabalho com a visual lib 2.3 Vailton....desculpa achei o problema é que uso as teclas de atalho com F1,F2 e uso tb o ENTER ai deu problema no ENTER...mas isso eu resolvo apesar que são bastante dbedit()....mas meu problema mesmo esta no tbrowse quando ele chega no stabilize() dah um erro e cai...sabe como posso resolver ? vou postar um exemplo de como faço:
Código: Selecionar todos
***********
FUNC TBROSE
***********
FIELD CODPRO,SUBCOD,PRODUTO,BRUTO,DESCONTO,LIQUIDO IN ENTRADA
LOCAL nButton := 1
LOCAL nOpcao := 0
LOCAL OTbr :=TBrowseDB( 06, 01, 15, 78 )
LOCAL OTbc1 :=TbColumnNew("N§Pro", { || CODPRO } )
LOCAL OTbc2 :=TbColumnNew("T", { || SUBCOD } )
LOCAL OTbc3 :=TbColumnNew("Descricao Produto", { || PRODUTO } )
LOCAL OTbc4 :=TbColumnNew("Peso Bru", { || BRUTO } )
LOCAL OTbc5 :=TbColumnNew("Desc.Kg", { || DESCONTO } )
LOCAL OTbc6 :=TbColumnNew("Peso Liq", { || LIQUIDO } )
LOCAL nKey
LOCAL lExitRequested
********************************************************************
// 1 2 3 4 5 6 7 8 9
oTbr:colorspec :="N*/W,N*/W, W+/B, R+*/N, N/R+, B/W, W/B, R/W*, B/W*"
oTbr:addColumn(oTbc1)
oTbr:addColumn(oTbc2)
oTbr:addColumn(oTbc3)
oTbr:addColumn(oTbc4)
oTbr:addColumn(oTbc5)
oTbr:addColumn(oTbc6)
************ Definicao de Cores ***********
oTbC5:COLORBLOCK :={| DESCONTO | IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) }
************ largura das colunas ***********
oTbc3:width:=20
************ largura das colunas ***********
************ Marcara das colunas ***********
oTbc1:picture:="!!!!!"
oTbc4:picture:="@E 99,999.9"
oTbc5:picture:="@E 9,999.9"
oTbc6:picture:="@E 99,999.99"
********************************************
************ Linhas das colunas ************
oTbr:COLSEP :=DEF_CSEP // desenha colunas Verticais
oTbr:HEADSEP:=HEAD_SEP // desenha colunas Horizontais superior
oTbr:FOOTSEP:=FOOT_SEP // desenha colunas Horizontais inferior
*********************
************ COLUNAS A CONGELAR ************
ColFix := 3 // atraves de variaval colfix
oTbr:freeze := ColFix
********************************************
aTABELA := savenv( 01, 00, 24, 79 )
CLEAR TYPEAHEAD // limpa sujeira no teclado
SAGEM(01,00,'LANCAMENTO DE PRODUTOS NO BOLETO',1)
SETCOLOR( "N+/W,N*/W, , , N*/W" )
SETCURSOR( 1 )
SETCOLOR( "N*/W,W+/BG" )
SELE ENTRADA
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
go top
*nSaveRec := Recno() // NÇO FUNCIONO NO XHARBOUR 09950
*oTbr:RefreshAll() // NÇO FUNCIONO NO XHARBOUR 09950
*oTbr:ForceStable() // NÇO FUNCIONO NO XHARBOUR 09950
sum all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"
Otbr:gotop() // no arquivo indexado
IExitRequested := .F.
DO WHILE !IExitRequested
DO WHILE !oTbr:stabilize() //ELE CAI BEM AQUI
ENDDO
nKey := inkey(0)
IF nKey == K_C .OR. nKey == K_c
DO WHILE .T.
CADBOL("C") // FUNۂO BLA,BLA,BLA
SELE ENTRADA
SET ORDER TO 1
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
nSaveRec := Recno()
oTbr:RefreshAll()
oTbr:ForceStable()
sum all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"
dbgotop() // arruma por ordem os dados
Otbr:gotop() // no arquivo indexado
IF vVOLTAR="S"
LOOP
ELSE
EXIT
ENDIF
ENDDO
ELSEIF nKey == K_F .OR. nKey == K_f
IExitRequested := .T.
ELSEIF nKey == K_A .OR. nKey == K_a
vREG=RECNO()
CADBOL("A") // FUNۂO BLA,BLA,BLA
SELE ENTRADA
SET ORDER TO 1
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
nSaveRec := Recno()
oTbr:RefreshAll()
oTbr:ForceStable()
sum all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"
dbgotop() // arruma por ordem os dados
Otbr:gotop() // no arquivo indexado
ELSEIF nKey == K_DEL
vREG=RECNO()
DELCADBOL() // FUNۂO BLA,BLA,BLA
SELE ENTRADA
SET ORDER TO 1
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
nSaveRec := Recno()
oTbr:RefreshAll()
oTbr:ForceStable()
sum all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"
dbgotop() // arruma por ordem os dados
Otbr:gotop() // no arquivo indexado
ELSEIF nKey == F_5
ATUALIZA() // FUNۂO BLA,BLA,BLA
OBRIGA3() // FUNۂO BLA,BLA,BLA
SELE ENTRADA
SET ORDER TO 1
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
nSaveRec := Recno()
oTbr:RefreshAll()
oTbr:ForceStable()
sum all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"
dbgotop() // arruma por ordem os dados
Otbr:gotop() // no arquivo indexado
ELSEIF nKey == K_DOWN
oTbr:down()
ELSEIF nKey == K_UP
oTbr:up()
ELSEIF nKey == K_PGDN
oTbr:pageDown()
ELSEIF nKey == K_PGUP
oTbr:pageUp()
ELSEIF nKey == K_CTRL_PGUP
oTbr:goTop()
ELSEIF nKey == K_CTRL_PGDN
oTbr:goBottom()
ELSEIF nKey == K_RIGHT
oTbr:right()
ELSEIF nKey == K_LEFT
oTbr:left()
ELSEIF nKey == K_HOME
oTbr:home()
ELSEIF nKey == K_END
oTbr:end()
ELSEIF nKey == K_CTRL_LEFT
oTbr:panLeft()
ELSEIF nKey == K_CTRL_RIGHT
oTbr:panRight()
ELSEIF nKey == K_CTRL_HOME
oTbr:panHome()
ELSEIF nKey == K_CTRL_END
oTbr:panEnd()
ENDIF
ENDDO
RETURN NIL
Desde Já Agradeço...
Enviado: 19 Abr 2007 18:12
por vailton
Alguma msg de erro?
Enviado: 19 Abr 2007 18:27
por sygecom
Sim.....desculpa falha minha não ter postado !! outra coisa estou usando a Visual Lib 2.3 + xHarbur 09950 + wvtgui....Abaixo o post do erro:
Código: Selecionar todos
++++++++++++++++++++ Internal Error Handling Information +++++++++++++++++++++
Subsystem Call ..: BASE
System Code .....: 1075
Default Status ..: False
Description .....: Argument error
Operation .......: >
Arguments .......: [ 1] = Type: C Val: [ 2] = Type: N Val: 0
Involved File ...:
Dos Error Code ..: 0
Trace Through:
----------------
(b)PLABOLETO : 586 in Module: BAL.PRG
TBROWSE:DRAWAROW : 2,206 in Module: tbrowse.prg
TBROWSE:PERFORMSTABIL : 1,909 in Module: tbrowse.prg
TBROWSE:STABILIZE : 1,815 in Module: tbrowse.prg
PLABOLETO : 651 in Module: BAL.PRG
PESAGEM : 484 in Module: BAL.PRG
(b)MENU : 321 in Module: MENUS.PRG
DWNEXECUTE : 1,246 in Module:
DOWNMENU : 998 in Module: vlib.prg
BAREXECUTE : 745 in Module:
BARMENU : 591 in Module: vlib.prg
MENU : 1,028 in Module: MENUS.PRG
MAIN : 225 in Module: SAGI.PRG
############################## Video Screen Dump ##############################
+--------------------------------------------------------------------------------+
| N§Pro T Descricao Produto Peso Bru Desc.Kg Peso Liq Vl Preco |
| ÄÄÄÄÄÄÂÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄ |
| ³ ³ ³ 0,0 ³ 0,0 ³ 0,00 ³ 0,00 |
| ³ ³ ³ ³ |
| ³ ³ ³ ³ |
| ³ ³ ³ ³ |
| ³ ³ ³ ³ |
| ³ ³ ³ ³ |
| ³ ³ ³ ³ |
|Error BASE/1075 Argument error: > Arguments: ( [ 1] = Type: C Val: [ 2]|
| = Type: N Val: 0)o Total-> 0,0ÄÄÄ¿ÚÄ Resultado da Compra ÄÄÄÄÄÄÄÄ¿|
|³ ³³ N§ Total Produtos: ³|
|Error at ...: (b)PLABOLETO(586) in Module: BAL.PRGPeso Liquido.....: ³|
|Called from : TBROWSE:DRAWAROW(2206) in Module: tbrowse.prg.......R$ ³|
|Called from : TBROWSE:PERFORMSTABILIZATION(1909) in Module: tbrowse.prg ³|
|Called from : TBROWSE:STABILIZE(1815) in Module: tbrowse.prgL ....R$ ³|
|Called from : PLABOLETO(651) in Module: BAL.PRGÙÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ|
|Called from : PESAGEM(484) in Module: BAL.PRGrtador |
|Called from : (b)MENU(321) in Module: MENUS.PRGinta-feira 9Calcula0Sa¡da |
|Called from : DWNEXECUTE(1246) in Module: |
|Called from : DOWNMENU(998) in Module: vlib.prg |
|Called from : BAREXECUTE(745) in Module: |
|Called from : BARMENU(591) in Module: vlib.prg |
|Called from : MENU(1028) in Module: MENUS.PRG |
|Called from : MAIN(225) in Module: SAGI.PRG |
+--------------------------------------------------------------------------------+
Desde ja agradeço sua Atenção
Abraços
Enviado: 19 Abr 2007 18:49
por vailton
Oq tem nesta linha:
(b)PLABOLETO : 586 in Module: BAL.PRG
Enviado: 19 Abr 2007 18:53
por sygecom
Abaixo o que esta nah linha indicada....são referencias para mudar a COR.
Código: Selecionar todos
oTbC5:COLORBLOCK :={| DESCONTO | IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) }
Abraços
Enviado: 19 Abr 2007 18:55
por sygecom
Tche, se eu tirar elas ele vai tranquilo !!! mas como mudo as cor no tbrowse ?
Enviado: 19 Abr 2007 19:09
por vailton
Qual o nome do campo q vc quer testar? Se for desconto teste:
Código: Selecionar todos
oTbC5:COLORBLOCK :={|| IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) }
Enviado: 19 Abr 2007 19:17
por sygecom
Testado e Aprovado....tenho bastante serviço pela frente......vlw...muito obrigado...aproveitando o post vc sabe alguma coisa de comunicação da porta serial para xharbour ? tens algum exemplo ??
Muito Obrigado !!
Abraços
Enviado: 19 Abr 2007 20:41
por vailton
Rapaz nesta questão não...
Enviado: 19 Abr 2007 21:02
por sygecom
Ok....mesmo assim agradeço muito....no que eu poder ser util prende o grito..
Abraços
Enviado: 19 Abr 2007 22:54
por sygecom
Tche, Aproveitando Topico...como faço pra rodar em TELA CHEIA na VISUAL LIB 2.3 ??
Desculpa alguma coisa...mas sou iniciante com varias duvidas....
Abraços
Enviado: 20 Abr 2007 00:48
por vailton
Tem 1 funcao que o pessoal usa para testar a resolucao atual do monitor e deste modo setar o tamanho correto da fonte, dando a impressao de se estar em tela cheia...
Eu já a vi várias vezes, mas num sei onde ela está aqui no HD...
rsrsrs (nao ajudou muito,né?...)
Enviado: 20 Abr 2007 01:17
por sygecom
Grande Vailton, vc simplesmente disponibilizar a visual lib 2.3 jah ajudou até de mais........mas toh conseguindo compilar com xharbour 09950 com o codigo abaixo:
Código: Selecionar todos
FUNC MAIN()
REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
DBSETDRIVER("DBFCDX")
#include "inkey.ch"
#include "visual2.ch"
#include "GTINFO.ch"
REQUEST WVT_SETCODEPAGE
WVT_SETTITLE(HB_OEMTOANSI("Sistema de Agendamento de Consultas"))
WVT_SETICON(2)
WVT_SETCODEPAGE(255)
SET EVENTMASK TO 159
do case // Identifica a resolucao do video
case gtinfo(GTI_DESKTOPWIDTH) > 1023
gtinfo(GTI_FONTWIDTH, 12) // 12 anterior // 13 // 12
gtinfo(GTI_FONTSIZE, 27) // 28 anterior // 29 // 27
case gtinfo(GTI_DESKTOPWIDTH) > 799
gtinfo(GTI_FONTWIDTH, 10 ) // 10 anterior // 10
gtinfo(GTI_FONTSIZE, 22 ) // 20 anterior // 22
otherwise
gtinfo(GTI_FONTWIDTH, 8)
gtinfo(GTI_FONTSIZE, 17)
endcase
SET CENTURY ON
SET BELL OFF
SET DATE BRITISH
SET EPOCH TO 2000
SET CONFIRM ON
SET DELETED ON
SET EXACT ON
SET SCOREBOARD OFF
SET WRAP ON
SET EXCLUSIVE OFF
set(_SET_DBFLOCKSCHEME,2)
Estou dando passo a passo...e estou com os seguintes problema abaixo:
1- como faço para usar o comando DrawFn( 02, "Busca" ) ?
2- como uso a tabela ASCII para visuais na tela como por exemplo CHR(24) ?
Obrigado pela Atenção
Abraços