Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-04-2013
Mizosok Mizosok is offline
Registrado
NULL
 
Registrado: abr 2013
Posts: 4
Poder: 0
Mizosok Va por buen camino
Poner los bordes en una tabla con TWordApplication

Hola!!

Estoy generando una tabla de word desde Delphi con TWordApplication, pero no me muestra los bordes de la tabla, es decir se muestran todas las celdas, pero ni los bordes de la columnas, ni de las filas se muestran.

Pudieran orientarme que debo poner para lograr que se vean los bordes?

Estoy trabajando con Delphi6

Agradecería cualquier sugerencia.....

Mizos
Responder Con Cita
  #2  
Antiguo 03-04-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Te recomiendo que hagas la operación manualmente, en el interior de Word, grabando una "macro". Entonces le pides a Word que te muestre el código de dicha macro y así sólo tendrás que copiar ese código a tu programa Delphi con un mínimo de adecuaciones.

Saludos.
Responder Con Cita
  #3  
Antiguo 04-04-2013
Mizosok Mizosok is offline
Registrado
NULL
 
Registrado: abr 2013
Posts: 4
Poder: 0
Mizosok Va por buen camino
Hola AL, gracias por responderme,

Yo realmente lo que he hecho siempre es eso que me sugieres, es decir, ver el codigo de una macro y despues buscar un similar con Delphi.

Pero en este caso lo que no sé es a quien pertenecen un grupo de propiedades tales como Style, ApplyStyleHeadingRows, ApplyStyleLastRow, ...., en TWordApplication.....

Le muestro la macro para que me entienda mejor...

Esta macro muestra solo una tabla simple de 4x3.. y con los dichosos bordes que estoy buscando...

Sub Macro5()
'
' Macro5 Macro
'
'
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _
5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
wdAutoFitFixed
With Selection.Tables(1)
If .Style <> "Tabla con cuadrícula" Then
.Style = "Tabla con cuadrícula"
End If
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = False
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = False
.ApplyStyleRowBands = True
.ApplyStyleColumnBands = False
End With
End Sub

Dicen por ahi que hay un paquete que creo que se llama Word para Torpes o algo parecido pero no encuentro un sitio para descargarlo....aunque repito, hasta ahora he resuelto de la forma que usted me explica

Precisamente soy nuevo en este foro, y algo de lo que me impulsó hacerlo es esta duda que tengo, y decidí en buscar ayuda.....

Trabajo con Delphi 6

Muchas gracias nuevamente, muy amable,

Mizos
Responder Con Cita
  #4  
Antiguo 05-04-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por Mizosok Ver Mensaje
Pero en este caso lo que no sé es a quien pertenecen un grupo de propiedades tales como Style, ApplyStyleHeadingRows, ApplyStyleLastRow [...]

Código:
Sub Macro5()
'
' Macro5 Macro
'
'
    ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _
        5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
        wdAutoFitFixed
    With Selection.Tables(1)
         If .Style <> "Tabla con cuadrícula" Then
            .Style = "Tabla con cuadrícula"
         End If
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = False
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = False
        .ApplyStyleRowBands = True
        .ApplyStyleColumnBands = False
    End With
End Sub
Según se aprecia, esas propiedades (las que comienzan con un punto) pertenecen al objeto indicado en el "With", es decir, son propiedades de "Selection.Tables(1)".
Responder Con Cita
  #5  
Antiguo 05-04-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Mizosok Ver Mensaje
..
Por favor, no repitas hilos, gracias.
No olvides nuestra guía de estilo.
Responder Con Cita
  #6  
Antiguo 06-04-2013
Mizosok Mizosok is offline
Registrado
NULL
 
Registrado: abr 2013
Posts: 4
Poder: 0
Mizosok Va por buen camino
Poner los bordes en una tabla con TWordApplication

Gracias AL,

Lo que no sé es como es el similar en Delphi de Selection.Tables(1).ApplyStyleHeadingRows=True por ejemplo,
Yo en mi código, pongo: ap.Selection.Tables.Item(1).ApplyStyleHeadingRows:=True
donde: ap:TWordApplication
y esa propiedad no se reconoce en Delphi,

Es posible que yo no esté poniéndo la propiedad donde realmente la lleva o esté poniendo algo mal...

Gracias AL, muy amable en volverme a responder.

Mizos
Responder Con Cita
  #7  
Antiguo 09-04-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por Mizosok Ver Mensaje
[...] y esa propiedad no se reconoce en Delphi [...]
Exacto, Mizos, Delphi no la predefine. Cuando manejas objetos OLEVariant, es hasta ejecutar el programa cuando se buscan esas referencias de propiedades y métodos. ¿Genera algún error cuando lo ejecutas?

Saludos.
Responder Con Cita
  #8  
Antiguo 10-04-2013
Mizosok Mizosok is offline
Registrado
NULL
 
Registrado: abr 2013
Posts: 4
Poder: 0
Mizosok Va por buen camino
Poner Bordes en una tabla con TWordApplication

No, no es que genere error, el problema es que dentro de TWordApplication, no existen..., es decir cuando la trato de buscar (en delphi) no la encuentro...

De todas forma Al, volvi a editar la macro de Visual Basic en Word y solo deje esta instrucción...

ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=4, NumColumns:= _ 5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _ wdAutoFitFixed

O sea, le quité las otras propiedades que vienen con el With,
y cuando ejecuto la nueva macro editada me genera la tabla con bordes,
como yo la quiero.....

Y cuando pongo la misma instrucción en delphi de la forma siguiente:

ap.ActiveDocument.Tables.Add( ap.Selection.Range, 3, 4,
DefaultTableBehavior, AutoFitBehavior );

ap es del tipo TWordApplication y

declaro:

DefaultTableBehavior y
AutoFitBehavior como Olevariant // Estas variables son de referencia

Delphi me muestra una tabla pero sin los bordes, entonces que pudiera ser?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
abrir word con twordapplication pabloloustau Servers 5 13-02-2010 13:58:56
Problema con TWordApplication.. grillomartin C++ Builder 5 29-01-2008 20:39:37
Poner el contenido de un label en una tabla dbf Jucho69 Varios 4 05-02-2007 16:10:55
poner una tabla en modo exclusivo maruenda Conexión con bases de datos 1 11-05-2004 21:06:40
Alguien sabe dnd encontrar documentación de los componentes TWordApplication y demás? Muten API de Windows 1 17-03-2004 14:17:29


La franja horaria es GMT +2. Ahora son las 08:56:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi