[RESUELTO] macro para desplazamiento del cursor

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
berjesus2
Mensajes: 31
Registrado: Dom May 20, 2012 7:31 pm

[RESUELTO] macro para desplazamiento del cursor

Mensaje por berjesus2 »

Quisiera que me ayudaran en lo siguiente: Sé que en el menú herramientas, opciones, openoffice.org calc, general, se puede modificar el desplazamiento del cursor al teclear enter. Pero quisiera que a través de una macro, que asociaría al evento abrir archivo, cambiase el desplazamiento del cursor en la dirección que yo quisiera, y que al salir del archivo, supongo que con el evento documento cerrado, volviese a su desplazamiento normal.
Tan sólo llego mediante el grabador de macros a que me muestre el cuadro de opciones:

Código: Seleccionar todo

sub Main
dim document   as object
dim dispatcher as object
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
 dispatcher.executeDispatch(document, ".uno:OptionsTreeDialog", "", 0, Array())
end sub
Muchísimas gracias por vuestra ayuda.
Última edición por fornelasa el Mar May 06, 2014 10:01 pm, editado 3 veces en total.
Razón: Insertar correctamente etiquetas CODE; por favor, consulta este hilo: https://forum.openoffice.org/es/forum/viewtopic.php?f=3&t=795&p=41325#p41325
openoffice 3.2.0 portable
windows xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: macro para desplazamiento del cursor

Mensaje por fornelasa »

Si es que he entendido bien, debería ser algo como esto:
Asigna la macro HojaCambiar al evento "Abrir Documento"
Asigna la macro NormalHojaCambiar al evento "Documento va a ser cerrado"

Código: Seleccionar todo

Sub HojaCambiar( evt )
  CambiarDireccion
End Sub

Sub CambiarDireccion
Dim oGSheetSettings As Object
  oGSheetSettings = CreateUnoService( _
      "com.sun.star.sheet.GlobalSheetSettings")
  oGSheetSettings.MoveDirection = _
      com.sun.star.sheet.MoveDirection.LEFT
End Sub

Sub NormalHojaCambiar( evt )
  NormalCambiarDireccion
End Sub

Sub NormalCambiarDireccion
Dim oGSheetSettings As Object
  oGSheetSettings = CreateUnoService( _
      "com.sun.star.sheet.GlobalSheetSettings")
  oGSheetSettings.MoveDirection = _
      com.sun.star.sheet.MoveDirection.DOWN
End Sub
Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
SLV-es
Mensajes: 4894
Registrado: Jue Ago 26, 2010 1:25 am
Ubicación: España
Contactar:

Re: macro para desplazamiento del cursor

Mensaje por SLV-es »

berjesus2 escribió:Tan sólo llego mediante el grabador de macros ....
La razzón de que no puedas hacer más con la grabadora de macros es porque no registra acciones en otros documentos o en otras ventanas; es más, no registra todas las acciones.
+info en La grabadora de macros de AOO

Saludos
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
berjesus2
Mensajes: 31
Registrado: Dom May 20, 2012 7:31 pm

Re: macro para desplazamiento del cursor

Mensaje por berjesus2 »

Resuelto, muchísimas gracias, era eso precisamente lo que quería, funciona perfecto.

Un saludo
openoffice 3.2.0 portable
windows xp
Avatar de Usuario
fornelasa
Mensajes: 3268
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: macro para desplazamiento del cursor

Mensaje por fornelasa »

Hola berjesus2,
Recordemos que para tener un foro lo más ordenado posible, cuando un tema ha sido resuelto debemos agregar la etiqueta [RESUELTO] y el icono "palomita verde" al mensaje inicial; dicho mensaje deberá quedar mas o menos así: [RESUELTO] macro para desplazamiento del cursor

Obviamente lo anterior no es un beneficio para FORNELASA sino que es un benéfico para toda la comunidad ya que así tendremos un foro más ordenado. Esta vez lo marcaré yo como [RESUELTO]

Saludos, Federico.
lo 6.2.0 | aoo 4.1.6 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Responder