Problemas com a funcao gwriteat()

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

clebermano
Usuário Nível 3
Usuário Nível 3
Mensagens: 187
Registrado em: 03 Out 2004 12:39
Contato:

Problemas com a funcao gwriteat()

Mensagem por clebermano »

Prezados amigos, mudei meu sistema para visual, ate ae tudo bem, agora me deparo com o seguinte problema.
Quando eu vou jogar na tela uma string com a funcao gwriteat(), funciona normal, agora quando eu preciso jogar na tela o conteudo de uma variavel, ja nao sai nada.
Alguem sabe me dizer pq?????
Vastec - Automacao Comercial Ltda - Ribeirao Preto - SP. (16)3968-2299-(16)8154-7828 (16)8121-4139
msn: suporte@clebermano.com.br - email: clebermanorp@yahoo.com.br
Quem nao vive pra servir nao serve pra viver !
MARINI
Usuário Nível 3
Usuário Nível 3
Mensagens: 288
Registrado em: 06 Jul 2004 08:06
Localização: Pindamonhangaba SP

Mensagem por MARINI »

O conteúdo da string deverá ser sempre um caractere.
Ex:
Se for uma string:
'data' informe DTOC(string).
'numérica' informe STR(string) ou
ALLTRIM(STR(string)).....
Sds
Marini
Domenico
Usuário Nível 1
Usuário Nível 1
Mensagens: 41
Registrado em: 02 Out 2004 16:03
Localização: São Paulo
Contato:

gFonte()

Mensagem por Domenico »

Uma função muito simples criada com o clipper 5.3, mas completa.
Pois é possível centralizar ou apenas exibir onde desejado, qualquer fonte gráfica criada com o utilitário Ttf2fnt.exe do clipper 5.3

/*
Autor: Domenico Alleva
Função pertencente a domclp53.lib
Funcoes utilizadas do clipper 5.3
1 - gFntLoad()
2 - gWriteAt()
3 - gFntErase()
Nenhuma funcao externa
Isto faz da gFonte uma funcao primaria
***************************************************
GFonte.prg
para apresentar uma string na tela em modo gráfico

Parametros:
nCol = Coluna em pixel
Se não especificado a string será centralizada na tela
nLin = Posição da linha em pixel
cDialog = String a ser exibida
cFonte = Uma fonte com extensÆo .FNT ou .FND
cor = um valor numérico que representa a cor da fonte
valores válidos de 0 a 15

teste = qualquer valor
Quando se coloca um valor neste parametro a fonte não é exibida
Forma de uso

variavel:= GFonte(0,0,"String a ser medida","fonte.fnt",0,0)

desta forma com o parametro teste preenchido
GFonte() -> <variavel> retorna o valor em pixel da extensão da fonte.
Usado apenas quando se precisa medir a extensão da fonte em pixel.

nCol1 = Valor esquerdo em pixel
nCol2 = Valor direito em pixel
Quando se deseja que uma cadeia de caracteres seja centralizada
dentro de dois valores a serem definidos.
Quando nCol1 é especificado nCol pode ser vazio

*/

#include "LLibg.ch"
#include "inkey.ch"

Function GFonte(nCol,nLin,cDialog,cFonte,cor,teste,nCol1,nCol2)

local mifonte
local dialogo
local vTam

if nCol = NIL
nCol:= 0
endif

mifonte:= GFntLoad(cFonte)
dialogo:= GWriteat(nCol,nLin,cDialog,cor,LLG_MODE_NIL,mifonte)

if nCol = 0
nCol:= (640 - dialogo) / 2
endif

if nCol2 = 0 .or. nCol2 = NIL
nCol1 = 0
endif

if nCol1 = NIL
nCol1 = 0
endif


if nCol2 # NIL
nCol:= (nCol2 - nCol1) - dialogo
nCol:= (nCol/2) + nCol1
endif


if teste = NIL
Gwriteat(nCol,nLin,cDialog,cor,LLG_MODE_SET,mifonte)
endif

GFnterase(mifonte)

return(dialogo)

O envio desta função é para ajudar todos aqueles que desejam aprender a utilizar o clipper 5.3 em modo gráfico.
clebermano
Usuário Nível 3
Usuário Nível 3
Mensagens: 187
Registrado em: 03 Out 2004 12:39
Contato:

Mensagem por clebermano »

Agradeco a ajuda, mas ja testei estas funcoes e nao funcionou, por exemplo seu eu for mostrar na tela gwiteat(100,100,"cleber",15,llg....)
ate ae tudo bem, mas se eu quiser jogar o valor que esta em um banco de dados por exemplo gwiteat(100,100,vendas->val_sai,15,llg....), ae ja nao sai nada, quer dizer nao consigo mostrar em tamanho grande na tela, usando o @ say, da certo, so que ae nao consigo os efeitos de fonte.
Se alguem puder me ajudar agradeco.
Vastec - Automacao Comercial Ltda - Ribeirao Preto - SP. (16)3968-2299-(16)8154-7828 (16)8121-4139
msn: suporte@clebermano.com.br - email: clebermanorp@yahoo.com.br
Quem nao vive pra servir nao serve pra viver !
clebermano
Usuário Nível 3
Usuário Nível 3
Mensagens: 187
Registrado em: 03 Out 2004 12:39
Contato:

Mensagem por clebermano »

opa, desculpa marini, nao tinha prestado atencao no seu comentario, realmente estou tentando, mostar um valor numerico, vou mudar para string ae te falo se deu certo. obrigado
Vastec - Automacao Comercial Ltda - Ribeirao Preto - SP. (16)3968-2299-(16)8154-7828 (16)8121-4139
msn: suporte@clebermano.com.br - email: clebermanorp@yahoo.com.br
Quem nao vive pra servir nao serve pra viver !
Domenico
Usuário Nível 1
Usuário Nível 1
Mensagens: 41
Registrado em: 02 Out 2004 16:03
Localização: São Paulo
Contato:

De novo

Mensagem por Domenico »

Peço desculpas mas a menos que me engane vc está fazendo errado.

A meu ver é muito simples, antes de querer mostrar o resultado com a função, vc deve ler o resultado:

variavel:= campo a ser mostrado

ai vc entra com a função:

Gwriteat(nCol,nLin,variavel,cor,LLG_MODE_SET)
Responder