Clipper On Line • Ver Tópico - Uso de teclado no PrinterSetup

Uso de teclado no PrinterSetup

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

Uso de teclado no PrinterSetup

Mensagempor Jorge Adourian » 02 Dez 2005 16:55

Quando chamamos o printersetup() conforme o código abaixo:

PRINT oprn NAME OEMTOANSI(TITULO) PREVIEW MODAL

oPrn:Setup()


aparece a janela de seleção e configuração da Impressora, porém se tentarmos acionar o ENTER ele não funciona, tem que usar o mouse.

Alguma solução para isto ?
Até...
Jorge Adourian
Clipper5.2e, Blinker7.0, SIX2(NSX), ADS7.1, FW2.3c, PrintFile2.1.5 e PDFCreator0.8.0(2)
Avatar de usuário

Jorge Adourian
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 90
Data de registro: 05 Jul 2004 23:38
Cidade/Estado: São Paulo-SP-Brasil
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Mensagempor rochinha » 14 Dez 2005 23:37

Amiguinho

Como o tela de setup e impressora é comun, ou seja, common dialog do Windows ela obedece a programação do próprio Windows.

Talvez se voce tentasse usar comandos que simulem o teclado para dar alguns tabs até chegar ao botão OK.

@braços :?)
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4544
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 806 vezes
Mens.Curtidas: 244 vezes

Mensagempor Jorge Adourian » 15 Dez 2005 10:23

Rochinha, mesmo tentando isto manualmente por teclado o TAB não responde, o problema é que o Foco não fica nesta janela.
Até...
Jorge Adourian
Clipper5.2e, Blinker7.0, SIX2(NSX), ADS7.1, FW2.3c, PrintFile2.1.5 e PDFCreator0.8.0(2)
Avatar de usuário

Jorge Adourian
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 90
Data de registro: 05 Jul 2004 23:38
Cidade/Estado: São Paulo-SP-Brasil
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Mensagempor rochinha » 15 Dez 2005 20:59

Amiguinho

Então faça o seguinte:

Tente usar a classe tCapture, ela irá capturar a janela que voce quizer, ai basta tentar os comandos de teclado.

Trecho de programa que usa a classe:
//-Chamar a Calculadora do Windows---------------------------------------//
FUNCTION Set_Calc() // Para que ela se abra somente uma vez
                    // Usa-se TWCapture.prg www.dbwide.com.ar
                    // ca-windows.prg baixei pela Internet.
    LOCAL oWCalc:=TWCapture():New("Calculadora")
    IF oWCalc:lCaptured
       oWCalc:Restore()
       oWCalc:GoTop()
    ELSE
       WinExec("Calc.Exe")
    ENDIF
    RETURN (NIL)


Classe completa:
//----------------------------------------------------------------------------//
//  AUTOR.....: Manuel Exp¢sito Su rez    Soft 4U '2001                       //
//  e-Mail....: maex14@dipusevilla.es                                         //
//  CLASE.....: TWCapture                                                     //
//  FECHA MOD.: 18/08/2001                                                    //
//  VERSION...: 1.00                                                          //
//  PROPOSITO.: Captura una ventana abierta por nuestro programa o por otra   //
//              aplicacion para poder enviarle mensajes como si fuera una     //
//              ventana mas de nuestro programa.                              //
//----------------------------------------------------------------------------//
//  DATAS.....: * lCapture tiene un valor logico, .f. si la ventana no se     //
//              pudo capturar y .t. si si se hizo                             //
//                                                                            //
//  METODOS...: * New( cTitle ) es el constructor, cTitle es el titulo de una //
//              ventana, si se le pasa intentara capturarla y pondra .t. en   //
//              ::lCapture                                                    //
//              * WCapture se encarga de buscar la ventana y asignarla a      //
//              nuestro objeto TWindow. Si la captura podremos interactuar    //
//              como si fuera una ventana mas de nuestra aplicacion           //
//                                                                            //
//  NOTAS.....: TWCapture esta heredada de TWindows por lo que tendremos a    //
//              nuestra disposicion todas las datas y metodos de esta clase.  //
//              No distingue entre mayusculas y minuscula pero si se tienen   //
//              en cuenta los espacios                                        //
//----------------------------------------------------------------------------//

#include "Objects.ch"

//----------------------------------------------------------------------------//
CLASS TWCapture FROM TWindow
    DATA lCaptured  AS BOOL
    METHOD New( cTitle ) CONSTRUCTOR
    METHOD WCapture( cTitle )
ENDCLASS

//----------------------------------------------------------------------------//
METHOD New( cTitle ) CLASS TWCapture
    if( ValType( cTitle ) == "C", ::WCapture( cTitle ), ::lCaptured := .f. )
    return( Self )

//----------------------------------------------------------------------------//
METHOD WCapture( cTitle ) CLASS TWCapture
   local hWnd := FindWindow( 0, cTitle )
   ::lCaptured := ( hWnd > 0 )
   ::hWnd := if( ::lCaptured, hWnd, 0 )
   return( ::lCaptured )

//----------------------------------------------------------------------------//


@braços :?)
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4544
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 806 vezes
Mens.Curtidas: 244 vezes

Mensagempor Jorge Adourian » 19 Dez 2005 16:02

Rochinha, eu imaginei algo mais simples, mas não sei como fazer.

Deve ter alguma função no FiveWin que permita selecionar outra janela equivalente ao <ALT><TAB>, você sabe como seria ?
Até...
Jorge Adourian
Clipper5.2e, Blinker7.0, SIX2(NSX), ADS7.1, FW2.3c, PrintFile2.1.5 e PDFCreator0.8.0(2)
Avatar de usuário

Jorge Adourian
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 90
Data de registro: 05 Jul 2004 23:38
Cidade/Estado: São Paulo-SP-Brasil
Curtiu: 0 vez
Mens.Curtidas: 0 vez




Retornar para FiveWin

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 2 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro