Por qué desaparece el caption de las TTabSheet laterales en un TPageControl
WinXP+D2007
Explico, es simple: un TPageControl con dos TTabSheet, normales y corrientes. Quiero poner las pestañas en el lado izquierdo, selecciono TabPosition y elijo tpLeft. Las pestañas están en el lado izquierdo, qué bien, pero ¡¡¡desparece el caption de las mismas!!!. Probado en un WinXP+D5 y WinXP+D7 ¡¡¡funciona bien!!! ¿Qué ha cambiado en D2007?, ¿cómo solucionarlo?. ¿Algún otro componente estándar que permita poner un menú lateral? Gracias. |
Cita:
Es posible que sea porque el tiempo de izquierdas se está acabando, ¿has probado a la derecha? :D |
La derecha tampoco, lo único que funciona es el centro :D
|
Con D2007 no se que pasa, pero en 2009 ya esta solucionado
|
Pues vaya faena :(
¿Puedes pasarme, si es posible, el fichero ComCtrls.pas de tu D2009?, voy a buscar las diferencias con el de D2007, a ver si veo el problema. |
1 Archivos Adjunto(s)
A lo mejor acabas antes si dibujas tú el texto, siempre que no sean muchas.
Te paso un ejemplillo con el que estuve probando hace un tiempo para "pintar" de forma manual los tabsheets. Es algo de código que usé para probar algunas cosas (coloreado), teniendo en cuenta con imagen y sin imagen. A lo mejor te sirve. |
Te comento en el Delphi2009 no viene el .pas solo el archivo DCU.
Pero tambien estoy usando D7 y al parecer no han habido muchos cambios. Por otro lado. RAD 2009 si trae el hpp tal vez estos archivos puedan ayudarte. |
Debe venir, en source\Win32\vcl
|
Si pero no lo tengo, es mas realize una busqueda. en todo el disco.. por las dudas y nada.
Tampoco dentro del DVD, solo el hpp |
Pues sí es raro eso, pero bueno, no te preocupes, ya me las apaño, gracias de todas formas :)
|
Cita:
|
Hola Antonio.
Busqué en "TabPosition" en QualityCentral, encontrando algunas explicaciones: http://qc.embarcadero.com/wc/qcmain.aspx?d=55241 http://qc.embarcadero.com/wc/qcmain.aspx?d=13009 https://forums.embarcadero.com/threa...ssageID=158875 Según se lee, se trata de un problema de temas, más de Windows que de Delphi. También encontré que Delphi 2007 incluye una opción de proyecto llamada Enable runtime themes. Haciendo pruebas con este Delphi sobre Windows XP, cuando desmarco esa opción ya no ocurre el problema que describes en tiempo de ejecución, aunque en tiempo de diseño persiste (probablemente porque el propio IDE fue compilado con esa opción activada). Si no te importa que los títulos de las pestañas sean invisibles en tiempo de diseño, hacer lo mismo podría bastarte. De lo contrario, en tu lugar optaría por una solución como la de Neftalí. Un abrazo temático. Al González. :) |
Entonces entiendo que en modo diseño no se ven los títulos (caption), pero si lo ejecuto entonces sí se verán.
Hago la prueba y... no se ven :( Sí, lo de "enable runtime themes" lo tengo marcado para que el programa sea un poco más vistoso. Seguramente si quito eso ya se verán, pero no quiero hacerlo :) Optaré entonces por el ejemplo de Neftalí que lo he probado y funciona bien. ¡¡¡Gracias!!! :) |
Cita:
Se supone que con OwnerDraw a TRUE deberías verlas, porque se dibujan "Manualmente"; Tal vez he dejado la condición al revés sin darme cuenta. Lo que veo es que tendrás que modificarlo (el código) porque si pones las pestañas a la izquierda se dibuja mal. ;-( Sigue pintando el texto en horizontal. |
Pues por eso lo decía, lo pinta en horizontal, sin embargo si le desmarco el ownerdraw sí lo pinta bien :eek:, ahora sí que no entiendo nada :confused:
|
Ya veo, es porque no tiene activo en el proyecto "enable runtime themes"
|
Cita:
Saludos |
Sí, ya veo, aparentemente pinta las pestaña encima del texto (caption), por eso no se ve.
|
La franja horaria es GMT +2. Ahora son las 07:42:28. |
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