Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
Color Calendario...

Estoy usando el componente TCalendar de la paleta Samples. ¿Alguno sabria decirme como cambiar el color del numero o del fondo de una o varias de las celdas?
Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 14-03-2007
Troffed Troffed is offline
Miembro
 
Registrado: mar 2004
Posts: 51
Poder: 21
Troffed Va por buen camino
Lightbulb

Adjunto pongo un componente que desarrollé ya hace unos años (tiene algunos fallos, como no ) que hace eso precisamente.

Lo único es que no muestra sólo un mes, sino todo un año.

Disclaimer: No puedo prestar soporte del componente, lo dejo tal cual, cada uno que lo use bajo su responsabilidad. Lo dejo totalmente sin licencia, es decir, que cada uno haga lo que quiera con él.
Archivos Adjuntos
Tipo de Archivo: zip AnualCalendar.zip (4,9 KB, 78 visitas)
__________________
"De la ignorancia nos equivocamos,
de los errores aprendemos."
---
www.softinspain.com
Responder Con Cita
  #3  
Antiguo 15-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
Gracias...

Hombre, se agradece, pero el tema es no tener que usar componentes externos...Me gustaria que alguien me dijera si es posible cambiar el color del Tcalendar tal y como yo quiero... Al menos por ir por otros caminos...
Agradeceria cualquier ayuda.
Responder Con Cita
  #4  
Antiguo 15-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
No. No puedes cambiar el color de fondo, como mucho poner en negrilla el número.

Eso de usar componentes... pues la verdad, si tienes el código fuente, es como si fuera un Combobox más... ¿o no?

Troffed En nombre de todos te doy las gracias, es algo que suele requerirse mucho, voy a darle una visual .

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #5  
Antiguo 15-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
oye..

Se puede entonces poner el numero en negrita en el componente TCalendar de la paleta Samples?? ( ojo, no en el TMonthCalendar de la paleta Win32 q es otro... )
Me gustaria que me dijerais como.
Gracias
Responder Con Cita
  #6  
Antiguo 15-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
...

NADIE sabria decirme si es posible poner en negrita algunos dias del calendario??
Gracias.
Responder Con Cita
  #7  
Antiguo 15-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
...

Nadie puede decirme algo? La verdad es que me urge... ^^´
Gracias de antemano.
Responder Con Cita
  #8  
Antiguo 15-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
En primer lugar, en un foro no hay urgencias, no sabes cuando se puede conectar alguien que sepa la respuesta, o pueda dedicar tiempo a investigar sobre ella.

En segundo lugar, por lo poco que he visto de ese componente, yo diría que no permite resaltar nada, no tiene eventos ni propiedades que lo indiquen.

Necesitas algo que los componentes de que dispones no lo solucionan. La única forma es:
- Instalar un componente de terceros (www.torry.net)
- Crearlo tu mismo, aunque echarás más tiempo del que dispones según veo.

Componentes de ese estilo hay muchos, mxCalendar son free y tienen potencial, aunque no tienen el Skin de Windows XP.

Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #9  
Antiguo 15-03-2007
The_Avatar The_Avatar is offline
Miembro
 
Registrado: ene 2006
Posts: 43
Poder: 0
The_Avatar Va por buen camino
Gracias

Gracias por la info. Solo queria confirmar que el componente no tiene la opcion antes de meterme a instalar otro nuevo. Espero no haber ofendido a nadie con las prisas...
Gracias a todos!! ^^
Responder Con Cita
  #10  
Antiguo 15-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
No hombre no, ni si quiera "me he molestado", solo he querido que comprendas el funcionamiento del foro, (que algunas veces aunque lo sabemos, no nos damos cuenta), espero no haberte molestado tampoco.

Después de enviar la respuesta.... me quedé pensando en mi última afirmación: "que no tenía Skin tipo XP", bueno, en realidad no hay mucho que tunear, pero siempre podemos usar los colores especiales clInactiveCaption, clActiveCaption, etc, que todos ellos se adaptarán al tema de windows que el usuario haya elegido.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #11  
Antiguo 22-03-2007
Avatar de thelibmx
thelibmx thelibmx is offline
Miembro
 
Registrado: mar 2007
Posts: 515
Poder: 18
thelibmx Va por buen camino
Instalar componente maxcalendar

hola yo soy nuevo en esto, tengo el mismo problema del calendario, asi que decidi instalar el componente del maxcalendar, la cosa es que soy tan nuevo en esto que no se como verlo o incluirlo dentro de delphi, yo estoy trabajando en la version de delphi 2006, ya instale el executable del calendario Maxcalendar, si alguien podria decirme que mas sigue para visualizarlo o ejecutarlo dentro del programa, de antemano muchas gracias
Responder Con Cita
  #12  
Antiguo 22-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Realmente no lo tienes instalado.

Ve a la carpeta donde se ha instalado, normalmente en:
C:\Archivos de programa\MaxComponents\mxCalendar\Component

Allí verás una seri de paquetes (extensión dpk). El que corresponde a BDS2006 es mxCalendar_d10.dpk, dale doble clic para abrirlo desde Delphi,

Añade la ruta antes mencionada en Tools -> Options -> Borland delphi -> library path (para que encuentre los fuentes al compilar).

Ahora, en el menú de delphi View -> Project Manager, creo recordar la pestaña Projects, verás el mxCalendar, usa el botón derecho para compilar y después instalar.

Ahora si, aparecerá un mensaje diciendo que se ha instalado en la paleta de componentes, en concreto, en una nueva paleta llamada "Max".

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #13  
Antiguo 22-03-2007
Avatar de thelibmx
thelibmx thelibmx is offline
Miembro
 
Registrado: mar 2007
Posts: 515
Poder: 18
thelibmx Va por buen camino
propiedades de maxcalendar componente

Muchas gracias, ya lo puedo ver, me ha servido de mucha ayuda, por ultimo y si no es molestia, tendras alguna pagina o algun tutorial donde pueda ver como puedo ocupar las propiedades de ese componente(maxcalendar)?, veras el uso que le quiero dar es que por ejemplo al dar un click sobre el calendario, me marque el dia de un color y me lo guarde en una base de datos, para que posteriormente al volver a ver el componente se muestren los dias seleccionados con un color, bueno espero que me puedan ayudar, y felicito a todos y cada uno de ellos que hace posible este foro, ya sea con sus consejos o preguntas mil gracias buen dia.. gracias lepe
Responder Con Cita
  #14  
Antiguo 23-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Usa el evento OnGetItemStyle y en los parámetros que lleva tienes:

- La fecha que se va a pintar
- la fuente (TFont) que puedes modificar a voluntad
- El color de fondo (que también puedes modificarlo
- (algo más que no recuerdo ).

Como ves, tendrás que usar ese evento cada vez que se cambia de mes para resaltar los días que quieras.

Tutorial o Ejemplo no tengo, lo siento.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #15  
Antiguo 23-03-2007
Avatar de thelibmx
thelibmx thelibmx is offline
Miembro
 
Registrado: mar 2007
Posts: 515
Poder: 18
thelibmx Va por buen camino
Hola Gracias por el dato ya lo puse y me sale algo parecido a esto

mxcalendar1.OnGetItemStyle(Sender:TmxCustomCalendar;AstyleType:TmxStyleType;ADate:TDate;var AFont:Tfont; var AColor:TColor)

pero he estado intentando poner algo para modificar y creo qe mi sintasix es incorrecta,podrias por favor explicarme un poco como es que deberia de ir la sintaxis para modificarlo es decir sender es el destinatario o destino ahi debo de poner el nombre de mi calendar¿?, luego Astyletype:TmxStyltype; en el primero es el nombre de la propiedad o como, se que soy un pequeño dolor de cabeza, si alguien pudiera escribir una linea con los datos de un ejemplo de como debe de ir esa linea le entenderia mejor, o q alguien me diga como lo debo de poner para poder cambiar el color, de verdad que me da pena estar haciendo tantas preguntas pero pues soy nuevo y son los pequeños topes qe me voy dando jeje... espero que esta sea mi ultima preguntilla de hoy, Gracias por su comprension jjeeje.
Responder Con Cita
  #16  
Antiguo 23-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Código Delphi [-]
uses DateUtils;

mxcalendar1.OnGetItemStyle(Sender:TmxCustomCalendar;AstyleType:TmxStyleType;
                      ADate:TDate;var AFont:Tfont; var AColor:TColor)

var MiFecha :Tdate;
begin
// colorear según la fecha que yo quiera:
MiFecha := encodeDate(2007, 03, 25);
if ADate = MiFecha then
begin
  AFont.Style := AFont.Style + [fsBold] // poner en negrita la letra de ese día
  Acolor := clRed; // color de esa fecha en rojo
end;

// colorear todos los fines de semana:
if AStyleType = stWeekend then AColor := clgreen

//colorear la fecha que hace click
else if AStyleType = stSelected then AColor := clYellow;
....
// mira en mxCalendar.pas para ver el StyleType

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #17  
Antiguo 23-03-2007
Bluefox Bluefox is offline
Miembro
 
Registrado: feb 2007
Posts: 27
Poder: 0
Bluefox Va por buen camino
Eso que quieres, creo que en la Jedi hay un control que te pone en color el los dias de las semana que quieras..
Responder Con Cita
  #18  
Antiguo 23-03-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Cita:
Empezado por Bluefox
Eso que quieres, creo que en la Jedi hay un control que te pone en color el los dias de las semana que quieras..
¿Podrías mirarlo? No es una exigencia, es que lo estuve mirando y no encontré forma alguna... quizás no miré bien.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #19  
Antiguo 23-03-2007
Bluefox Bluefox is offline
Miembro
 
Registrado: feb 2007
Posts: 27
Poder: 0
Bluefox Va por buen camino
Si que lo hay, pero esta asociado a un Text, al menos el que yo use hace poco, y puedes colorear los dias de la semana (yo lo hice del finde (sabado y domingo)).
Responder Con Cita
  #20  
Antiguo 23-03-2007
Avatar de thelibmx
thelibmx thelibmx is offline
Miembro
 
Registrado: mar 2007
Posts: 515
Poder: 18
thelibmx Va por buen camino
mmm, creo que no entiendo un poco sus tecnicismos, pero si me sirvio de mucho la ayuda que me proporcionaron,ya puedo cambiar y colorear los dias, (que bien eso esta muy perfecto!!) pero lo hago de forma manual, creo q eso esta bien por el momento, (no esta mal para un principiante en delphi 2006)ahora mi proximo reto es guardar las fechas en una tabla en una bd en postgree, ya tengo la tabla, solo me gustaria si me pudieran decir que componente me recomiendan que utilize para guardar los datos de tipo fecha en la tabla, de antemano muchas gracias por el apoyo!!
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
calendario reina Varios 9 17-04-2007 12:33:28
Calendario srangel JAVA 1 04-09-2004 12:58:08
Imprime Calendario botones67 Varios 1 29-08-2003 01:11:27
calendario botones67 Impresión 5 17-05-2003 16:01:35


La franja horaria es GMT +2. Ahora son las 19:19: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