Varredura de tela.

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Eduardo Borio
Usuário Nível 1
Usuário Nível 1
Mensagens: 29
Registrado em: 02 Abr 2007 16:13
Localização: Curitiba

Varredura de tela.

Mensagem por Eduardo Borio »

Preciso de uma função que faça uma varredura na tela até encontrar um determinado caracter.

Alguem pode me ajudar?


Desde já agradeco.
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

É só achar? ou vc precisa de alguma outra info?
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Eduardo,

Eu utilizo a SCREENSTR() da CT.LIB. Olhe como eu faço:

Código: Selecionar todos

VLIN3:=FVQPOS(43,"3. Configurar") // Lê a SUBTRING apartir da coluna 43 da tela, claro que você normalmente possue 25 linhas para procurar, então faço um FOR I=1 TO 25, por exemplo.

FUNCTION FVQPOS(VPC,VSTRNG)
Local VPL,VPT,VFND
VPT:=LEN(VSTRNG)
VRET:=2
FOR VPL=3 TO 15
    VFND:=CHARODD(SCREENSTR(VPL,VPC,VPT))
    VRET:=VRET+1
    /*
    @ 20,VPC SAY "^"
    @ 23,00 SAY VFND
    // INKEY(0)
    */
    IF VFND=VSTRNG
       EXIT
    ENDIF
NEXT
RETURN VRET
Espero ter ajudado. Um clip-abraço :)Pos
Eduardo Borio
Usuário Nível 1
Usuário Nível 1
Mensagens: 29
Registrado em: 02 Abr 2007 16:13
Localização: Curitiba

Mensagem por Eduardo Borio »

Bom acho que estou sendo meio vago.
Então vamos lá.

Eu tenho um sistema onde vc monta os blocos de tela, ou seja, desenha na tela e salva em arquivo. Como se fosse um form do Delphi.

No meu Prg eu somente carrego este bloco e pronto, minha tela esta desenhada.
Só que tem um porém, no sistema que desenha a tela, eu gravo um chr ALT+255(invisivel ou espaço, como queiram) em cada posicao que eu vou querer fazer um Say ou um Get. assim no prg só leio o chr(255) que foi plotado na tela e nao preciso ficar dando as coordenadas dos Get e Say.

Mas acontece que esta funcao é em asm e está em 16 bits. Como nao conheco Assembly, vou tentar escreve-la em clipper. Para poder migrar p/ xHarbour.

Em clipper eu a uso normalmente, mas quando tento linkar no bcc com hb da pau, e o ilink da um erro dizendo q as funcoes desta lib estao em 16 bits.
Eduardo Borio
Usuário Nível 1
Usuário Nível 1
Mensagens: 29
Registrado em: 02 Abr 2007 16:13
Localização: Curitiba

Mensagem por Eduardo Borio »

Opa! Obrigado... enquanto escrevia o outro post vc escreveu o seu.
Era isso mesmo que eu estava precisando.
Muito Obrigado

Nao tenho essa lib. Onde posso encontrar?

e mais uma vez agradeco.
Vlwsss
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Mande seu email que envio pra vc !!!
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Que bom que serviu a minha dica !.

É bom você utilizar o item BUSCA (no MENU acima) daqui do FORUM, assim as FAQ não se repetem tanto alí você verá assim como neste link:

https://pctoledo.org/forum/viewto ... ght=ct+lib

Então quer dizer que você é programador DELPHI ?. Se eu pedisse um favorzinho você poderia me responder se há solução para o seguinte questão que começa +/- por aqui:

https://pctoledo.org/forum/viewto ... &start=170

Estou apelando ao um programador GUI porque eu acho que ja enchí tanto a paciência do nosso prezado colega MALIGNO, que eu já não sei como ajudar e quem sabe você pudesse dar a sua opinião.

Um clip-abraço :)Pos
Responder