Cursor no GET destacar com INSERT

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

scom
Usuário Nível 3
Usuário Nível 3
Mensagens: 133
Registrado em: 15 Nov 2004 10:49
Localização: Dourados/MS

Cursor no GET destacar com INSERT

Mensagem por scom »

Ola amigos

Tenho um sistema em xharbour modo console, e um cliente me passou uma situação e até então não tinha percebido,
Quando ele esta no GET e aperta o insert para inserir textos o cursor fica do mesmo jeito, ou seja com insert ligado ou desligado o cursor no GET fica do mesmo jeito pequeniminho....alguem tem alguma ajuda sobre isto.
Editado pela última vez por Toledo em 09 Mai 2014 17:24, em um total de 1 vez.
Razão: Mensagem editada para formatação de texto em letras minúsculas. Evite postar mensagens com texto TOTALMENTE EM LETRAS MAIÚSCULAS.<br>Veja as Regras do Fórum:<br>7 - Mensagens em letras MAIÚSCULAS poderão ser editadas sem aviso prévio.
S COM INFORMÁTICA
CLIPPER 5.3 / FIVEWIN 2.0 / BLINKER 7
XHARBOUR/ BCC582
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Cursor no GET destacar com INSERT

Mensagem por alxsts »

Olá!

O código abaixo deveria funcionar. Testei em Harbour e xHarbour mas a mudança de formato do cursor não acontece...

Em Clipper isto funcionava (não me lembro mais com certeza). Se não funcionar, teria que embutir esta funcionalidade no GetSys.Prg.

Código: Selecionar todos

#include "set.ch"
#include "inkey.ch"
#include "setcurs.ch"

Procedure Main()

   LOCAL cCod As Numeric
   LOCAL cNome As Character
   LOCAL bSavIns As CodeBlock
   LOCAL GetList As Array := {}  

Altd()

   REQUEST HB_CODEPAGE_PTISO
   HB_CDPSELECT("PTISO")

   SetMode(25,80)
   CLS

   @ 10, 10 SAY "Código:" Get cCod PICT "9999"
   @ 12, 10 SAY "Nome  :" Get cNome PICT "@!"

   SetCursor( If( ReadInsert(), SC_INSERT, SC_NORMAL ) )

   bSavIns := Setkey( K_INS, { || InsToggle() } )

   WHILE LastKey() != K_ESC   
      cCod := Space(4)
      cNome := Space(20)

      Readmodal( GetList)

      Setcursor( SC_NONE )
      Setkey( K_INS, bSavIns )
   ENDDO

   RETURN
//-------------------------------------------------------------------------------------------------------
STATIC PROCEDURE InsToggle()

   If Readinsert()
      Readinsert( .F. )
      Setcursor( SC_NORMAL )
   Else
      Readinsert( .T. )
      Setcursor( SC_INSERT )
   Endif

   RETURN
//-------------------------------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Cursor no GET destacar com INSERT

Mensagem por Kapiaba »

Código: Selecionar todos

/*
 * $Id: cursrtst.prg,v 1.1.1.1 2001/12/21 10:45:42 ronpinkas Exp $
 */

proc main
Local x
? "This lists the cursor modes, along with the expected shape"
? "Press a key after each example"
?
for x := 0 to 4
  CursTest( x )
next
? "Note: In Windows Console mode, Special2 can not be emulated (it is 2/3 size)"

SetCursor(1)

Proc CursTest( nCurs )
Local aTypes := { "None",    "Underline", "HalfBlock", "FullBlock",   "Upper Half"}
Local aNames := { "SC_NONE", "SC_NORMAL", "SC_INSERT", "SC_SPECIAL1", "SC_SPECIAL2"}

SetCursor( nCurs )
++nCurs
? Padr(aNames[nCurs],11), PadR(aTypes[nCurs],11), Str(SetCursor(),3)
Inkey(0)
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Cursor no GET destacar com INSERT

Mensagem por alxsts »

Olá!

Testei o código que postei acima com Clipper 5.2e e funciona perfeitamente.

O Harbour e xHarbour não são compatíveis com o Clipper neste código. Se alguém puder postar no grupo de desenvolvedores, agradeço.
[]´s
Alexandre Santos (AlxSts)
Responder