Página 1 de 1

estado do DEVICE

Enviado: 30 Nov 2021 19:00
por ssflavio
Boa tarde amigos!
tem como eu saber o status do DEVICE?
preciso saber se esta como PRINT ou SCREEN
se estiver como PRINT, tem algumas rotinas que eu devo mudar o funcionamento
vou dar um exemplo:
tenho uma função que se chama catavento(), ela coloca os seguintes sinais |/-\ na ultima linha, um de cada vez, fazendo uma animação que o programa esta funcionando. Quando estiver imprimindo o relatorio, tenho que saber o status do DEVICE, para trocar para SCREEN e depois voltar para PRINT

estado do DEVICE

Enviado: 30 Nov 2021 20:38
por alxsts
Olá!

Use a função Set().

Código: Selecionar todos

#include "set.ch"
  LOCAL cSet

   cSet := Set ( _SET_DEVICE )
   If cSet == "PRINTER"
      Set ( _SET_DEVICE, "SCREEN" )
      Catavento ()
      Set ( _SET_DEVICE, "PRINTER" )
   Endif
Não testei mas o caminho é este.

estado do DEVICE

Enviado: 01 Dez 2021 09:08
por ssflavio
é quase isso!
preciso saber o estado que esta o DEVICE, mais ou menos isso

Código: Selecionar todos

if set(_set_device) == "SCREEN"
   catavento()
endif

estado do DEVICE

Enviado: 01 Dez 2021 10:17
por alxsts
Olá!
ssflavio escreveu:é quase isso!
Set.ch escreveu:#define _SET_DEVICE 20
É isto:

Código: Selecionar todos

if set( _SET_DEVICE ) == "SCREEN"
   catavento()
endif
Se usar a constante manifesta " _SET_DEVICE", ela tem que estar escrita exatamente como foi definida no arquivo Set.ch. estas definições são case sensitive.

Pode usar também

Código: Selecionar todos

if set( 20 ) == "SCREEN"
mas assim fica menos legível...