Mejoras importantes para los ejemplos con degradados (Cesar Chalom) Traducción [1]

Enviado por : amby en 21 Feb, 2007 - 04:00
ART [2]
Cesar Chalom brinda una actualización en el código para trabajar con colores degradados y resume los enlaces a los artículos relacionados a este tema.

Mejoras importantes para los ejemplos que emplean degradados

Artículo original: IMPORTANT FIX FOR SAMPLES USING GRADIENTS
http://weblogs.foxite.com/cesarchalom/archive/2007/01/24/3178.aspx [3]
Autor: Cesar Chalom (http://weblogs.foxite.com/cesarchalom [4])
Traducido por: Ana María Bisbé York (amby@telefonica.net [5])
Para: PortalFox (http://www.portalfox.com [6])


Desafortunadamente, le ha ocurrido un error extraño, a alguna gente, mientras utilizaban algunos ejemplos para la creación de degradados que yo había colocado en mi blog.

Algunos reportaron que el código original creaba una imagen negra en lugar de un degradado. En otros casos, ocurría el error "No puede cargar 32-bit DLL GDIPLUS"

Esto ocurría porque VFP estaba utilizando las diferentes versiones de GDIPLUS.DLL instaladas en el PC. Una versión para dibujar el degradado y otra versión para apenas dibujar el degradado. Si el PC solamente tiene una versión de GDIPLUS.DLL instalada, incluso más de una copia, todo irá bien. Pero algunas aplicaciones necesitan una versión específica de esta biblioteca, y MS ha liberado más de 5 versiones hasta el momento. Después de un largo tiempo de pruebas he detectado esto utilizando el comando "DISPLAY DLLS"

Muchas gracias a todos los que han reportado este error, han probado y ayudado a encontrar el origen, especialmente a Andrew McNeill [7], Emerson Reed [8], Sergey Berezniker [9], Rui Nogueira, Randy Pearson [10], Sacchi. No puedo olvidar las más de 70 personas de mi hogar, la comunidad brasileña FoxBrasil [11], que muy amablemente probaron mucho código en entornos diferentes.

La reparación:

Cuando estamos utilizando

DECLARE Gdip..... IN GDIPLUS etc etc

Lo correcto es cambiar de "IN GDIPLUS"  por "IN GDIPLUS.DLL" En ciertas PC, esto está causando alguna confusión, y hace que VFP utilice más de una versión, especialmente si el usuario ya está utilizando _gdiplus.vcx o el ReportListener.

Vea que VFP declara Gdiplus utilizando ".DLL" para sus comandos internos, y también en _Gdiplus.vcx

En la Ayuda de VFP9 podemos encontrar:

"Para asegurar que está utilizando la copia correcta de GDIPLUS.DLL, utilice la sintaxis IN GDIPLUS.DLL sin ruta específica en sus sentencias DECLARE DLL."

http://msdn.microsoft.com/library/en-us/dv_foxhelp9/html/e11b3ffe-ee6b-4af3-94f8-7a5ed30ea83d.asp [12]

Clase GRADOBJECTS

He publicado la nueva versión de la clase, que puede ser descargada desde este enlace:

http://www.geocities.com/macmarbr/gradobjects.zip [13]

Además, espero publicar un nuevo escrito explicando todas las nuevas posibilidades, correcciones y ejemplos; pero, por el momento, esta versión va a ayudar a eliminar este error.

Escritos anteriores

He actualizado además todos los escritos anteriores

Gradient Objects with GDI+ Revisited [14]

Gradient Backgrounds in your forms with GDI+ Part2 [15]

Gradient Backgrounds in your forms with GDI+ [16]

Nota de la traductora: Los dos últimos escritos están traducidos al español y publicados en:

Formularios con fondos de colores degradados con GDI+ (Cesar Chalom) Traducción [17]

Formularios con fondos degradados con GDI+ Parte 2 (Cesar Chalom) Traducción [18]

El primer artículo ha sido traducido y será publicado en breve en www.PortalFox.com [19]

OUTLOOK BAR 2003:

El mismo problema ocurre utilizando esta gran clase. Para repararlo, abra por favor el archivo outlook2003bar.vcx, seleccione la clase "Outlook2003Bar". ¡ Lo siento Emerson !

En el método "CreateGradientImage", agregue, por favor, un ".DLL" en la declaración de la función GDI+ del degradado, así:

* Declarar API
Declare Long GdipCreateLineBrushI In GDIPlus.DLL ;
String point1, String point2, ;
Long color1, Long color2, ;
Long wrapMode, Long @lineGradient

BIBLIOTECA GDIPLUSX

Toda la biblioteca va a ser actualizada también.

Con suerte, para la próxima liberación - 0.07 Alpha ya habremos agregado esta corrección y algunas otras posibilidades y ejemplos interesantes. http://www.codeplex.com/VFPX/WorkItem/View.aspx?WorkItemId=7358 [20]

TODAS LAS DECLARACIONES GDIPLUS

Craig Boyd tiene un escrito fantástico en el que ofrece todas las 603 declaraciones de GDI+ (http://www.sweetpotatosoftware.com/SPSBlog/PermaLink,guid,d06cf377-c9ba-4eeb-93aa-b98ac115e895.aspx [21])

Nota de la traductora: Este artículo ha sido traducido y será publicado en breve en www.PortalFox.com [22]

DISCULPAS NUEVAMENTE

Siento mucho todos los inconvenientes causados, y agradezco nuevamente por todos los comentarios y el apoyo tan importante que esta gran comunidad me ha brindado.


Mejoras importantes para los ejemplos con degradados (Cesar Chalom) Traducción | Entrar/Crear una cuenta [23] | 0 Comentarios
Los comentarios son propiedad de sus respectivos autores.
No somos responsables de su contenido.
Enlaces
  [1] http://www.portalfox.com/index.php?name=News&file=article&sid=2355
  [2] http://www.portalfox.com/index.php?name=News&catid=&topic=2
  [3] http://weblogs.foxite.com/cesarchalom/archive/2007/01/24/3178.aspx
  [4] http://weblogs.foxite.com/cesarchalom/
  [5] http://www.portalfox.com/mailto:amby@telefonica.net
  [6] http://www.portalfox.com
  [7] http://akselsoft.blogspot.com/
  [8] http://weblogs.foxite.com/emersonreed/default.aspx
  [9] http://sergey.berezniker.com/
  [10] http://fox.wikis.com/wc.dll?Wiki~RandyPearson
  [11] http://www.foxbrasil.com.br/forum/index.php
  [12] http://msdn.microsoft.com/library/en-us/dv_foxhelp9/html/e11b3ffe-ee6b-4af3-94f8-7a5ed30ea83d.asp
  [13] http://www.geocities.com/macmarbr/gradobjects.zip
  [14] http://weblogs.foxite.com/cesarchalom/archive/2006/07/26/2076.aspx
  [15] http://weblogs.foxite.com/cesarchalom/archive/2006/06/22/1906.aspx
  [16] http://weblogs.foxite.com/cesarchalom/archive/2006/06/13/1825.aspx
  [17] http://www.portalfox.com/article.php?sid=2248
  [18] http://www.portalfox.com/article.php?sid=2251
  [19] http://www.PortalFox.com
  [20] http://www.codeplex.com/VFPX/WorkItem/View.aspx?WorkItemId=7358
  [21] http://www.sweetpotatosoftware.com/SPSBlog/PermaLink,guid,d06cf377-c9ba-4eeb-93aa-b98ac115e895.aspx
  [22] http://www.PortalFox.com
  [23] http://www.portalfox.com/user.php