Como poner el corrector ortografico del Word en primer plano.

195 views
Skip to first unread message

Juan Miguel Solis

unread,
Sep 11, 2017, 6:37:18 PM9/11/17
to Comunidad de Visual Foxpro en Español
Hola A todos

Aquí poniendo un problema a ver si me podéis echar una mano, os cuento.

EN una aplicación que tengo uso el corrector ortográfico del Word, en un momento dado pulsaba un botón y el texto que había en un campo lo pasaba a una función, entonces me aparece el corrector ortográfico del Word en primer plano y corregía o añadía la palabra, etc. o sea funcionaba perfectamente, ahora desde hacer tiempo el cliente a pasado a Office 2016, y ahora cuando pulsa el mismo botos, el corrector se activa pero detrás de la ventana del VisualFoxpro  :(  y como el cliente no lo ve, pulsa otra vez apareciendo la pantalla que os muestro:













Esto que aparece es correcto, ya que el corrector se abre pero para ir a el, hay que pulsar "Alt + Tab" e ir hasta el corrector y luego ya estando en primer plano seleccionabas o lo que quieras hacer sin problema.

Y después de todo esto la pregunta,  COMO PUEDO HACER PARA QUE EL CORRECTOR ORTOGRÁFICO ME APAREZCA EN PRIMER PLANO  como pasaba antes.

La función que uso es la siguiente (es antigua) pero funciona.

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

*  PROCEDURE cmdcheckspelling.CLICK

    *~~~~~~~~~~~~~~~~~~~~~

    * PROCEDURE cmdcheckspelling.CheckSpelling

    *

    * AUTHOR: Trevor Hancock, Microsoft Corporation

    * CREATED : 08/22/00 12:03:46 PM

    *

    * ABSTRACT: Automates MS Word to check the spelling of text in

    *                 THISFORM.edtTextToCheck

    * ACCEPTS: Nothing

    * RETURNS: Nothing

    *~~~~~~~~~~~~~~~~~~~~~

 

    IF TYPE([goWord]) # [O]           && Check if you have already instantiated Word

 

      IF !THISFORM.FindWord()    && You don't have Word up, so let's locate it.

        MESSAGEBOX([Microsoft Word no encontrado.], 0,[Aviso])

        RETURN .F.

      ENDIF

 

      *!* Change the mouse pointer for all form controls to indicate processing (opening Word)

      WITH THISFORM

*       .cmdCheckSpelling.MOUSEPOINTER = 11

*       .edtTextToCheck.MOUSEPOINTER = 11

        .MOUSEPOINTER = 11

      ENDWITH

 

      PUBLIC goWord, goWordDoc              && Public vars for Word and Document1 in Word.

      goWord = CREATEOBJECT([WORD.APPLICATION])    && Create Word

 

      WITH goWord

        .WINDOWSTATE= 0  && wdWindowStateNormal (needs to be Normal before you can move it)

*        .MOVE(1000,1000)              && Move the window out of view

        goWordDoc = .Documents.ADD

      ENDWITH

 

      *!* Change mouse pointers back

      WITH THISFORM

*       .cmdCheckSpelling.MOUSEPOINTER = 0

*       .edtTextToCheck.MOUSEPOINTER = 0

        .MOUSEPOINTER = 0

      ENDWITH

 

    ENDIF

 

    WITH goWordDoc

      .Content.TEXT = ALLTRIM(THISFORM.Pf.Pg1.Caja_Concepto.VALUE)

      .ACTIVATE

      IF .SpellingErrors.COUNT > 0

        .CHECKSPELLING

      ELSE

        =MESSAGEBOX([Corrección ortográfica completa. No se encontraron errores.],0,[Ortografía])

      ENDIF

      *!* For some reason, Word likes to make itself visible here. Keep it hidden...

      goWord.VISIBLE = .F.

      THISFORM.Pf.Pg1.Caja_Concepto.VALUE = .Content.TEXT

    ENDWITH

 

    IF TYPE([goWord]) = [O]

      IF TYPE([goWordDoc]) = [O]

        goWordDoc.SAVED = .F.

        goWordDoc.CLOSE(0)

      ENDIF

      goWord.QUIT

    ENDIF

    RELEASE goWord, goWordDoc

 

    ThisForm.Pf.Pg1.Caja_Concepto.setfocus



------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

En fin a ver si ha alguien se le ocurre que puedo modificar para que me aparezca en primer plano .

Gracias anticipadas a todos.


Un saludo desde Madrid/España

Daniel Sánchez

unread,
Sep 12, 2017, 10:52:55 AM9/12/17
to Comunidad de Visual Foxpro en Español
A mi también me ha pasado, pero se trata de que el word esta esperando una respuesta de parte del usuario y como lo tienes en modo no visible se queda en espera, así que mejor abre el word y fijate que esta solicitando quien sabe tienes un archivo no grabado o no es una versión registrada y sale el cuadro de dialogo de registrar el programa.

Verifica lo que te comento.

Saludos
--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047 RPM #948615385
Trujillo - Perú

P  Sugerimos no imprimir este e-mail a menos que sea absolutamente necesario. Protejamos el medio ambiente.

Juan Miguel Solis

unread,
Sep 16, 2017, 10:28:57 AM9/16/17
to Comunidad de Visual Foxpro en Español
Hola

A  lo mejor me explique mal, el corrector si se abre, pero para verlo tienes que pulsar Alt+Tab y te puedes posicionar en el, el problema es que no me aparece delante del VisualFoxPro, claro como no se ve, el usuarios vuelva a llamar al corrector y es cuando sale la imagen que envié, pero si se abre, lo que necesito es ver como puedo ponerlo par que esa ventada aparezca delante y no detrás.  Por cierto el programa esta realizado en VFP 6.0 (es algo antiguo pero funciona muy bien :) )

A ver si alguien me puede decir como hacer que el corrector aparezca en primer plano y no detrás del VFP.

La rutina que uso es la que pongo mas abajo.

Un saludo

Ing. Bernardo José Martínez Pérez

unread,
Sep 16, 2017, 10:40:53 AM9/16/17
to publice...@googlegroups.com
Y si le mandas por keyboard las teclas Alt tab ya probaste?


From: publice...@googlegroups.com <publice...@googlegroups.com> on behalf of Juan Miguel Solis <solis.ju...@gmail.com>
Sent: Saturday, September 16, 2017 9:28:57 AM
To: Comunidad de Visual Foxpro en Español
Subject: [vfp] Re: Como poner el corrector ortografico del Word en primer plano.
 

Juan Miguel Solis

unread,
Sep 16, 2017, 10:53:33 AM9/16/17
to Comunidad de Visual Foxpro en Español
No, eso no lo probé, porque para mandar el Alt+Tab, necesitaría saber cuantas ventanas hay abiertas y en que posiciones esta el corrector para poder mandar los Alt+Tab correspondientes ....

El caso es que antes me funcionaba muy bien :( , no se o a lo mejor la forma que uso el corrector es muy liosa, a lo mejor hay una manera mas facil...

Un saludo

El martes, 12 de septiembre de 2017, 0:37:18 (UTC+2), Juan Miguel Solis escribió:

Edwin Duran

unread,
Sep 16, 2017, 11:05:44 AM9/16/17
to Comunidad de Visual Foxpro en Español
Reply all
Reply to author
Forward
0 new messages