PDA

Ver la Versión Completa : Componentes del club


José Luis Garcí
20-08-2007, 11:07:06
Hola a todos los compañeros, en una de esas noches de imsonio, se me ha ocurrido la siguiente idea, con el fin de ayudar al Club, se podria crear una serie de componentes "soló es una idea" en un paquete que sea de uso exclusivo para los miembros premium, con la idea de que más miembros se apunten a este y al darse de alta poder acceder a ellos, parto de la idea de crear una serie de componentes ponelos en este foro e irlos mejorando y volviendolos a colocar, hasta que se decida que el componente es adecuado, colocarlo, en un apartado para tal fin, crear nuestro propio repositorio de componentes, no siendo de pago, sino un privilegio más de los miembros Premium, poner pantallas o ejemplos de estos al acceso de todos, para que sea más goloso el registrase.

con permiso de emilio y demas moderadores me gustaria crear una encuesta, y saber si los moderadores estarian de acuerdo.

Emilio
20-08-2007, 11:12:30
Me parece una idea excelente.

José Luis Garcí
20-08-2007, 11:43:09
Fabulo Emilio, me alegro que te guste la idea y echare una mano en lo que pueda.

Caral
20-08-2007, 15:38:26
Hola
Me gusta mucho la idea y la apoyo en lo que se necesite, ya sabéis.
Voto si.
Saludos

seoane
20-08-2007, 16:40:43
¿Alguna sugerencia? ¿Alguien necesita algun componente? :confused:

José Luis Garcí
20-08-2007, 17:10:02
os dejo un componente con el que estube trabajando, lo dejo a vuestra decisión.

¿Alguna sugerencia? ¿Alguien necesita algun componente? :confused:

Seone seguro que si entre todos echamos la mano seguro nos salen unos buenos componentes

Julián
20-08-2007, 17:35:39
Hola!

Lo que yo haría es una sección componentes, accesible para todo el mundo, pero con niveles distintos para usuarios normales y premium, de manera que por ejemplo, yo mismo, pueda poner 10 ó 15 componentes que tengo hechos, en dos modalidades para cada uno: versión normal y premium, la premium con código fuente y la normal sin código, o sin código y de pago, o con código y de pago. O con código para los dos, etc.

Por supuesto, en los componentes de pago una parte sería para clubdelphi.

Si alguien se curra las especificaciones del scriptphppara tal cosa, lo hago yo mismo en un rato.

Un saludo!

jachguate
20-08-2007, 17:48:16
Bueno... necesitar, muchos necesitamos muchas cosas.. :)

¿Tenes algo a-la quantum-grid :)

Pero... ¿habrá algún componente que falte por inventar?

La oferta de componentes, muchos de ellos open-source o al menos gratuitos, hoy por hoy es muy alta..

Saludos :)

José Luis Garcí
21-08-2007, 14:05:14
La idea es crear un grupo de componentes echos por los miembros del club, pueden ser una union de varios componentes, algo totalmente nuevo, o algo que es de pago y podemo realizarlo entre todos para el Club. La realidad demuestra que la gente suele ser reacia a aportar el codigo con el que trabaja, en algunos casos se entiende por tema de estar comprometido, con una empresa, etc. pero eso no significa que no se pueda apollar en componentes creados por otros compañeros, haciendolos, más utiles, vistosos, faciles, etc., el poner componentes en esta sección, la idea de que el que lo baje, lo analize, lo pruebe, y comente, critique, mejore, actualize, sobre el, en el hilo, tengo en mente un par de componentes más, pero no quiero aportar unicamente yo, ni mi intención es ser el centro de antención.

Pensar que no solamente es un componente más, es un intercambio de ideas y metodos de programación, entre usuarios, de varios niveles.

dec
24-08-2007, 20:18:31
Hola,

Personalmente he hecho varios intentos. El más logrado es el que adjunto... y no está sino en sus inicios, sin terminar, y ya con varios "fallos". Pero puede acaso dar alguna idea.

La intención era reunir mis componentes y otros de otros compañeros en el paquete, empero, una de las cosas que me llevó a dejarlo es que no habría uniformidad... por ejemplo en el código fuente.

Con uniformidad quiero decir que se me hacía complicado mantener el paquete con los distintos componentes actualizados. Y por otro lado tampoco sabía hasta qué punto podía coger otros componentes y meterlos ahí... aunque creo que esto hubiera sido lo de menos.

Bueno. El caso es que, junto con los componentes, se incluyen también algunas unidades "del ClubDelphi", que, como veréis, contienen código recogido de estos Foros. No sé. Se me hace un proyecto curioso, pero, nada sencillo de llevar a cabo.

O tal vez es que le doy demasiadas vueltas... no sé. Podéis probar a instalar los componentes, pero, no para usarlos, sino para que veáis, por ejemplo, cómo se implementa en ellos una propiedad "Acerca de..." a partir de la cual habría de mostrarse un formulario con información relativa al ClubDelphi.

En fin... no sé... yo lo adjunto, pero, como digo, es algo que ni está terminado, ni siquiera empezado, podría decirse. :)

PD. Veréis paquetes (dpk) para Delphi 7, pero, acabo de probar a instalarlos en Delphi 2007 y no hay problema alguno. Claro, apenas hay código... así que no puede haber muchos problemas...

José Luis Garcí
24-08-2007, 20:22:18
Os dejo un nuevo componente, me gustaria que lo probaseis y comentarán como mínimo, entiendo el desanimo de Caral en este hilo, http://www.clubdelphi.com/foros/showthread.php?t=47307, cuando comenta:

Hola
Era solamente una idea mas, pero después de 40 visitas y dos respuestas me doy cuenta que no interesa.
Ya se le ocurrirá algo a alguien mas.
Gracias por vuestros comentarios José Luis Garcí y BlueSteel.
Saludos

Lo cierto es que crea desanimo, el que los compañeros, no seán un poco más participativos, en este tipo de hilos. Bueno sin más ods dejo el nuevo componente.

dec
24-08-2007, 20:25:26
Hola,

Bueno. Zamora no se ganó en una hora. No os desaniméis. De hecho si os ponéis manos a la obra en algo (que no digo que no lo estéis haciendo ya...) acaso sea más fácil que alguien pueda aportar algo y aun algos. Pero tampoco me hagáis mucho caso, ¿eh?

En cuanto al componente que dices José... a ver si lo adjuntas que se te ha olvidado. :)

José Luis Garcí
24-08-2007, 20:28:03
Lo siento se me olvido adjuntar el fichero en la anterior respuesta, por cierto Dec en lo que escribia el mensaje anterior, entro el tuyo me alegro te unas a la idea.

dec
24-08-2007, 20:36:10
Hola,

Bueno... unirme a la idea... no me "desuno", desde luego, pero, me parece complicada de poner en práctica. Ahora bien nada es imposible, y esto menos... Y voy a decir en lo que me parece más complicada de llevar a cabo. En el trabajo en equipo. Personalmente no tengo ninguna experiencia, pero, se me hace algo necesario.

Es preciso llegar a acuerdos empezando por cómo se codificará el asunto, cómo se va a escribir el código fuente, qué reglas "sintácticas" y de otro tipo han de seguirse. Empezando por ahí... Y luego está el asunto del desarrollo propiamente dicho. ¿Cómo? ¿Cada quien un componente? ¿Uno para todos y todos para uno? ¿Cómo? A mí son cosas que me resultan complejas.

dec
24-08-2007, 20:57:24
Hola,

Quisiera añadir algo más. Pregunto. ¿Es más complicado poner de acuerdo a un grupo de desarrolladores para siquiera empezar a trabajar, o costaría menos (para todos) que alguien voluntarioso se pusiera manos a la obra y avanzara en el asunto, de modo que luego alguien pudiera colaborar ya ciñéndose a unas determinadas pautas? Esto no garantizaría el éxito de la obra, claro está, pero, es que nada lo garantiza. Yo pienso seriamente qué costaría menos o qué sería mejor en todo caso y sólo doy mi opinión.

Respecto del componente que has adjuntado José, acabo de probarlo (incluyéndolo en el paquete de componentes que adjunté más arriba) y bueno, está bien, aunque, me llamó la atención algo que tal vez te interese, por si quieres tenerlo en cuenta. Se trata de la alarma que permite fijar el componente. Cuando se dispara dicha alarma se muestra un mensaje con un determinado texto.

Ahora bien, ¿no sería mejor que hubiera en el componente un evento "OnAlarm" que se disparara si estuviera asignado. De este modo el usuario del componente podría mostrar un texto, o cualquier otra cosa que necesitase. No te costaría mucho implementar algo así. Añades el evento, y, en el lugar en que ahora muestras el mensaje, compruebas si el evento está asignado y lo "disparas" si es así.

PD. También me gustaría añadir que el tipo de tu componente se llama "DObleStBar", empero, suele usarse la letra "T" como prefijo de los "tipos" en Delphi. Es decir, es una tontería... tal vez no te interese cambiarlo, empero, el asunto podría quedar tal que: "TDObleStBar". Ya ves tú. :)

Caral
24-08-2007, 21:04:21
Hola José Luis Garcí
Me parece una idea genial, el componente tiene muchos usos.
A mi me ha gustado mucho, aqui espero el proximo:D
Gracias por el aporte y tu preocupación.
Saludos

BlueSteel
24-08-2007, 21:29:59
os dejo un componente con el que estube trabajando, lo dejo a vuestra decisión.

recien baje el componente.. y lo voy a probar... que tal... pienso que debe funcionar bien.. yo nunca he realizado un componente.. y tampoco se como hacerlo.. y por el momento no se me ha crujido como realizarlo.. pero creo que teniendo un poco más de tiempo le dare manos a la obra...:p


PS: José Luis Garcí, pienso que deberias colocar una pequeña referencia en el post... de al menos que puedes hacer con el componente... digo...es solo mi opinion...

Emilio
24-08-2007, 21:51:58
Esto empieza, tal vez tengamos que abrir pronto de nuevo la sección de componenetes.

José Luis Garcí
24-08-2007, 23:24:03
Gracias Dec, pero llevo mucho tiempo sin programar en condiciones (unos dos años) por temas de la empresa, estoy aprovechando el estar de vacaciones, para echar una mano, pero ya se me acaban y luego mi colaboracion, dependera de a que hora termine de trabajar, llegar a casa, etc. Como plantee al principio la idea es que se envie componentes, el personal los mire, corriga, mejore, mi conocimiento es bastante basico, en el último componente le puedo haber dedicado, los menos 12 horas en cuatro dias, como dije mejoralo, ya tienes una idea para ello, se me ocurre otra, defenir color, que no lo tiene, pero cinceramente ya empeze con otro y quiero terminarlo antes del Lunes que comienzo a trabajar.

A los demas compañeros, me alegro que os guste, o no:D, para eso esta y luego, los jefasos que decidan los que son buenos para crear nuestro propio pakage.

Delphius
24-08-2007, 23:51:11
La idea es buena. Y como Dec ha dicho: lo dificil es armonizar el trabajo en equipo. Creo que el modo de conseguir esto es por dos vías:
1. En forma democrática, conseguir un estandar a seguir en todo los desarrollos de componentes. Una vez que se hayan debatido (si es que viene al caso) la forma de llevar la documentación y/o codificación mantenerlo en algún espacio destinada a tal fin de modo que alguien lo pueda consultar.
2. En forma complementaria al estandar, cada desarrollo es independiente y el autor inicial del mismo dicta las "políticas" de como llevar el desarrollo. Entonces, cada autor o "jefe" del desarrollo del componente puede o no decir como se va a trabajar en su desarrollo.

Es decir: Clubdelphi propone el estandar. Cada "jefe" impone la forma de llevarlo a cabo.

A todo esto, yo tengo unos componentes que hice de práctica. Puede que no tengan demasiada utilidad. Pero algunos les puede añadir pintura para que quede como la gente. Uno implementa el manejo del volumen de audo y el otro genera claves (está muy simple) de acuerdo a un "diccionario" ingresado por el usuario. El que crea y considere útil dichos componentes me lo dice y los subo (no quisiera malgastar espacio en el servidor de Emilio)


Saludos,

dec
25-08-2007, 01:15:20
Hola,

Ahondando un poco en el "paquete" que adjunté antes, he quitado todos los componentes que considero "obsoletos", dejo sólo dos, pero, simplifico un poco las cosas (en cuanto a los directorios de los componentes, ahora sólo uno) y he hecho algunos cambios en el diálogo "acerca de"... únicamente para mostrar lo que puede ser un "principio" de lo que nos traemos entre manos... o algo así. :)

Podéis descargaros "el invento" desde aquí: http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

Emilio
25-08-2007, 07:24:58
(no quisiera malgastar espacio en el servidor de Emilio)

Hombre puede ser preocupante, esta máquina sólo tiene dos discos de 160Gb cada uno :D

Delphius
25-08-2007, 07:37:20
A bueno... si es asi pues si:D

Adjunto y cedo la autoria de los componentes a clubdelphi. Repito, son de hace tiempo, y lo hice con fines de práctica. Tal vez el TKeyGen pueda ser ampliamente mejorado y útil... el TVolumen no se si tenga utilidad (al menos lo fue en una ocasión para mi).

Saludos,

fer21unmsm
25-08-2007, 19:15:15
Me parece muy buena idea, trataré de colaborar en lo que pueda, voy a abrir mi baul de los recuerdos (es que ahora estoy en .Net, jeje) y a revisar que tengo. :)

saludos cordiales.

dec
26-08-2007, 00:10:27
Hola,

Ahí voy haciendo algunos cambios en "CCD"... por ahora le he "robado" un par de componentes a Román, estoy incluyendo ya algún que otro ejemplo, y renombrando los componentes de modo que cuenten con el prefijo "TCCD" y se eviten problemas.

Ya sabéis que podéis descargaros "el invento" desde aquí: http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

PD. ¿Alguien se anima con los iconos de los componentes? Son algo "feíllos" en mi opinión, pero, yo no doy más ahí... :)

José Luis Garcí
26-08-2007, 19:04:10
Chicos me he atrasado de, mala manera, me fuy el sabado a pescar y llege tarde, sólo me quedo un rato para ponerme con el componente, la proxima semana lo pondre no se que día pero seguire trabajando en ello, tambien prometo ponerme a mirar los vuestros, comentaros y mirar si puedo añadir algo.

dec
27-08-2007, 03:22:25
Hola,

Bueno. Pues, como el que no quiere la cosa, "CCD" cuenta ya con nueve componentes. No lo diría, sino fuera porque acabo de actualizar de nuevo el "ZIP" (que podéis descargar (http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip)) incorporando algunas novedades que quisiera reseñar aquí para obtener tal vez vuestras opiniones.

http://img511.imageshack.us/img511/5430/dibujopv2.png

Estoy tratando de seguir ciertas reglas para con "CCD".

1º El código fuente de los componentes se escribe en inglés. Métodos, eventos, propiedades, variables, etc. Me parece mucho más eficaz el inglés que el español. Además de que puede ayudar a mantener ciertas "normas". Por ejemplo, no es igual "FijarValor" u "ObtenerValor" que los famosos "SetValue" y "GetValue". Los componentes que añadí de Román ya estaban en inglés. Alguno de los que añadí yo (TCCDHashes, basado en código de Seoane) estaba también ya en inglés. Los que no lo estaban los he traducido. También los nombres de los componentes (sus tipos) están en inglés.

2º Todos los componentes empiezan por el prefijo "TCCD". Con esto se pretende evitar problemas con otros componentes. Por ejemplo, ya contamos con un "TCCDComboBox", empero, podríamos haberlo llamado "TComboBoxEx", por ejemplo, aunque, es un nombre más o menos común y que podría haber chocado con nuestro componente.

3º Se ha incorporado una unidad donde los componentes compartirán tipos ("UCCDTypes.pas") y otra unidad donde pueden encontrarse las distintas excepciones ("UCCDExceptions.pas") de los componentes CCD. En la unidad "UCCDEvents.pas" podrán encontrarse "tipos" de eventos susceptibles de ser compartidos. Los componentes CCD levantarán sus propias excepciones. La excepción base es "ECCDException", descendiente de "Exception" y habrá tantos tipos de excepciones como sea menester. Actualmente ya se cuenta con "ECCDIOException" de la que desciende "ECCDNoFileExtension" que podéis ver "en uso" en el componente "TCCDHashes".

4º Aunque está aún por ver, la intención es que los comentarios en los componentes sigan las "reglas" de los "JavaDoc", de modo que puedan aprovecharse con herramientas capaces de parsear el código fuente y generar una documentación más o menos útil... pero esto está aún por ver cómo se puede llevar a cabo de la mejor manera. Por ahora los comentarios de una línea usan " // comentario" y los comentarios "multilínea" y para métodos, funciones y demás van así:


{ Comentarios de la función
}
function Foo(): boolean;
begin
// Comentario de una línea
end;


5º Se mantienen dos grupos de proyectos. "CCD" y "Ejemplos", en la carpeta "Código" y "Ejemplos", respectivamente. El primero contendrá los paquetes de componentes (actualmente para Delphi 2007... tal vez igualmente para versiones anteriores de Delphi), tanto para tiempo de diseño como para tiempo de ejecución; el segundo grupo de proyectos contendrá los ejemplos de los componentes, propiamente dichos.

6º Todos los iconos de los componentes (para la paleta de componentes en Delphi) se encuentran en el archivo "CCD.dcr". Cada icono corresponde a un componente y se identifica mediante el nombre del tipo de cada componente. Esta tal vez es una clara tarea pendiente: mejorar los iconos existentes.

7º Todos los componentes que pudieran derivar de "TComponent", directamente, lo harán de "TCCDBaseComp", puesto que esta clase implementa ya la propiedad "AboutCCD" que mostrará (cuando se proceda a su "edición" en el Inspector de Objetos) el formulario "Acerca de CCD". Los componentes que no hereden de "TCCDBaseComp" habrán de implementar la propiedad "AboutCCD" (tal como se hace ahora) cuyo tipo es "TAboutCCD".

8º Especial atención a las unidades que se usan. Se intentará no incluir ninguna unidad que no se use (o borrar aquellas que no dejen de ser necesarias) y se tratará de incluir las unidades en las cláusulas "interface" o "implementation" según corresponda.

En fin. Seguramente me dejo cosas por decir... Son únicamente ocho los componentes añadidos (hasta ahora), pero, creo que son bastante "fiables" (dentro de su sencillez) y acaso útiles, aunque, ciertamente, yo mismo tengo mucho cuidado con los componentes que utilizo... no me fio de cualquiera, pero, CCD puede llegar a estar bien, quién sabe, con un poco de tiempo y trabajo. :)

http://img54.imageshack.us/img54/7254/dibujoan6.png

Julián
27-08-2007, 12:54:24
Yo ya tengo una paleta clubdelphi que me he ido haciendo poco a poco. Pero es una cosa muy heterogenea, sin orden ni concierto, pues algunos componentes datan de la época del delphi 1, y su código debe ser algo digno del museo de los horrores, y otros estan algo chapuceros, aunque a mi me han servido, y algunos muy, pero que muy bien.

Algunos no cuentan, que no son mios, pero los he metio ahí.

dec, puedo ir enviandotelos, a ver si alguno crees que sirve para la colección.

Esta es mi paleta clubdelphi:


http://ajedrezchat.com/fotos/capturas/paleta_clubdelphi.png

Emilio
27-08-2007, 13:05:14
Esto está pillando muy buena onda ;)

Sugerencia: He echado en falta dpk's para distintas versiones de Delphi.

seoane
27-08-2007, 13:16:05
Tengo curiosidad. ¿Que hace el componenete TTorpedoDeLaPardera? :D

seoane
27-08-2007, 13:24:50
Una pregunta. Si decido crear un componente y cederlo para que forme parte de esta colección, me gustaría saber si luego podré publicarlo en otros lugares, en mi pagina web por ejemplo, o lo debería de mantener en exclusiva para el club.

Emilio
27-08-2007, 13:30:55
Tengo curiosidad. ¿Que hace el componenete TTorpedoDeLaPardera? :D

Jorl, ese es mi favorito :D

En realidad no hace nada, es una especie de componente educacional, pero mejor que te diga Julián que es el padre de la criaturita.

Emilio
27-08-2007, 13:35:25
Una pregunta. Si decido crear un componente y cederlo para que forme parte de esta colección, me gustaría saber si luego podré publicarlo en otros lugares, en mi pagina web por ejemplo, o lo debería de mantener en exclusiva para el club.

Este es un trabajo no remunerado y sin exclusivas, he visto que Dec ha puesto ya la licencia esa que lo explica y que personalmente me parece muy bien.

Julián
27-08-2007, 13:40:57
Oño! seoane, no me digas que no conoces este mundialmente famoso componente:

http://www.clubdelphi.com/trucos/index.php?id=134 (http://www.clubdelphi.com/foros/../trucos/index.php?id=134&scroll=0&scrollb=0)

dec, ya puedes ir metiendolo en la colección, jeje.

un saludo

José Luis Garcí
27-08-2007, 18:30:58
Me gusta como se van añadiendo personal a la idea, dentro de lo poco que se, procurare no meter mucho la pata, aseguro que los componentes creados y los que tengo en mente, son ideas que seguramente existan en algun otro componente, pero al final lo hago como una colaboracion en parte "interezada :rolleyes:", ya que programo de nuevo y estudio a la vez, y segundoadquiero componentes que otros compañeros han creado, mejorando la posibilidad de mis futuros, programas.

Creo que una de las cosas que deberiamos tratar, es crear varias "paletas", para cada grupo de componentes (Visuales, no visuales, base de datos, sistemas, etc.), ademas de algunos que se encargue de la documentación de una manera adecuada, iconos, ayudas, los packages, correcciones, etc, claro esta, una vez se decida los componentes que se incluiran.

Pienso que para este último punto, se deberia crear una especie de comite, que mirase, los componentes, los probara y los puntuara.

Otra cosita que echo en falta, es los que han bajado los componentes, si se les ocurre alguna nueva idea sobre los mismo, tanto si se encarga en implementarla o no, comentarla, ya que algún otro compañero, puede añadirlo y mejorar el componente.

:D Bueno siento el toston, de mopmento voy a probar ahora los componentes, seguir con los que estoy creando y os comento, como siempre ayudare en lo que pueda, pero mis conocimientos son muy basicos.

dec
27-08-2007, 21:30:21
Hola,

Julián, pon por aquí los componentes que veas menester. Prometo echarlos un vistazo (como a todos) y tratar de añadirlos al "paquete". :)

Emilio, no hay "paquetes" para distintas versiones... pero es que no es asunto baladí. Ahora mismo "sobra" incluso el paquete para Delphi 2007.

En realidad debería haber un paquete... mejor dicho dos, uno para tiempo de diseño y otro para tiempo de ejecución. Dichos paquetes funcionarían al menos en Delphi 2007, muy probablemente en Delphi 7 y, en versiones anteriores... habría que probarlos...

Seoane, el código es completamente libre, al menos esa es mi idea... es decir, si tú pones un componente por ahí... nada te impediría seguir su desarrollo en otro lado. Tal vez vas por el asunto de los cambios y tal...

Por ejemplo, he cogido tres o cuatro componentes de Román. ¿Y si Román hace alguna mejora en los componentes? Pues sí, efectivamente, es un problema. Por eso ahora mismo sólo he añadido componentes que se ven más o menos "hechos", "terminados"...

José, ahora mismo el paquete CCD incluye nueve componentes. No hay diferentes "pestañas" porque sería acaso demasiado pronto, en mi opinión. Pero, en todo caso, sí que estoy de acuerdo contigo en que una buena organización hace mucho.

En realidad no sé qué coño ha pasado que me he erigido yo en autor de nada... y el caso es que creo que es más sencillo que alguien se haga cargo del "conjunto", lo que no quita que la gente colabore de mil modos distintos, ni que tenga que ser yo el que se haga cargo...

Por ejemplo aportando más componentes, encontrando errores en los que ya están ahí, creando iconos para la paleta de componentes... en fin, creo que se pueden hacer varias cosas, y, sin embargo, sigo viendo todo este asunto complicado, claro está, para terminar haciendo algo "curioso".

delphi.com.ar
27-08-2007, 22:17:59
Para quien le interese, subí los fuentes de los "FireSoft EditSuite (http://www.delphi.com.ar/vcl/editsuitsrc.zip)" que son de mi autoría, y por el momento solo publicaré el link de descarga en este foro.

Los componentes son:

TDBComboGrid Combo que depliega una gilla en lugar de una lista permitiéndole al usuario poder ver más comodamente los datos de una entidad/relación.

TDBIncComboGrid Agrega a las funcionalidades del TDBComboGrid, la posibilidad de hacer una búsqueda incremental.

TDBCheckCombo Es un combo que despliega un TCheckListBox para que el usuario pueda seleccionar varios items, en lugar de uno.

TPatternEdit Es un simple editor, al que se le pueden definir patrones de caracteres para que solo nos deje ingresar un tipo definido de datos, es el ancestro de el resto de los editores.

TIntEdit Editor de Integer.

TCardinalEdit Editor de Cardinal.

TDateEditor Es un editor simple para datos del tipo TDate, toma el formato de la variable ShortDateFormat.

TTimeEditor Es un editor simple para datos del tipo TTime, toma el formato de la variable ShortTimeFormat.

TDateTimeEditor Es un editor simple para datos del tipo TDateTime, toma el formato de las variables ShortDateFormat y ShortTimeFormat.

TListSearchEdit Es un editor, que hace una busqueda incremental automática entre los valores definidos en un TString.

TComboEditor Es un editor con un botón, como para crear nuestros propios combos.

TSpinEditor Es un editor del tipo de TSpinEdit, pero sin ningún tipo de dato relacionado. La idea de este componente es poder utilizarlo libremente para poder navegar por cualquier tipo de lista.

TSpinIntEdit Es un editor del tipo de TSpin[/QUOTE]


En breve subiré algunas otras utilidades mas. ¡¡ESPERO SUS COMENTARIOS!!

Saludos!

dec
27-08-2007, 22:22:16
Hola,

Pues no sé... desde luego es estupendo que se incremente el número de componentes. Sin embargo, esto me hace dudar: ¿no sería más adecuado crear un "super paquete" de componentes que incluyera todos los paquetes que por separado podamos aportar cada uno de nosotros?

Es que viendo la cantidad de componentes que proporcionas, Federico, no sé yo si lo indicado sería que yo ahora cogiera cada uno de ellos y los incorporara a "CCD"... así sin más... Esto podría no ser lo más acertado. Tal vez el asunto se me escaparía de las manos.

No sé. ¿Qué os parece?

Edito: Federico, ¿estás seguro de que enlazaste al archivo correcto?

José Luis Garcí
27-08-2007, 22:22:52
Dec estoy de acuerdo contigo, lo verdaderamente util seria que todos, aportaramos, dentro de nuestros conocimientos y echaramos una mano, creo que tienes razón en crear un guión maestro para la creación de los componentes, en cuanto en que acabara, espero que en una buena paleta de componente, que nos sea util a todos, y del que todos seamos capaces de aprender, como dijo el maestro al alumno "Las rocas son muchos mas duras que el agua de la mar, pero golpe a golpe esta las convierte en arena", eso creo que es lo que debemos intentar, poco a poco sin perder animo, creado, retocando y mejorando, componente a componente.

Por cierto alguno sabe donde puedo conseguir una guia de referencias de clases, para el uses del componente, sería inteligente tenerla a dispoción para como menciono Dec no cargar modulos de más.

-------------------------------------------

Despues de ver el de Dec
Por eso creo que deberia crearse una especie de comite , que seleccione, tambien es buena la idea de proponer componentes, pero si cerrar la voluntad del personal en ayudar, ya que si no sabe como hacer uno de los componentes que se propone y en cambio a creado uno que tal cual, o con pequeños cambios puede ser fabuloso.
y Delphi.com.ar
Te prometo probar los componentes en breve, pero hoy he regresado al trabajo y mi tiempo libre a disminuido, pero no pienso abandonar.

delphi.com.ar
27-08-2007, 22:25:44
Es que viendo la cantidad de componentes que proporcionas, Federico, no sé yo si lo indicado sería que yo ahora cogiera cada uno de ellos y los incorporara a "CCD"... así sin más... Esto podría no ser lo más acertado. Tal vez el asunto se me escaparía de las manos.
Solo comento aunque se incluyan en el paquete tengo pensado seguir distribuyéndolos abiertamente, por eso remarqué "por el momento" :D

Saludos!

dec
27-08-2007, 22:31:28
Hola,

Supongamos que se incluyen en CCD los componentes de Federico. Pero mañana Federico lleva a cabo una mejora en sus componentes, soluciona algunos errores, etc., ¿qué se supone que ocurriría con CCD? ¿Tendría Federico que notificar de alguna manera que hizo mejoras en los componentes? Pero esto sería trabajo para Federico. Claro que alguien tiene que estar pendiente de las posibles mejoras e irlas incorporando... sería trabajo para él. Más aún, puesto que habría de estar al tanto de otros componentes además...

Lo único que tengo claro es que trabajar en equipo es muy complicado. O a lo menos que hay que saber hacerlo, obviamente, y que si nunca lo has hecho (como es mi caso) uno se pierde, no sabe cómo seguir, tiene la sensación de no estar haciendo bien las cosas. No es que quiera ser pesimista, nada de eso, pero, sí que quiero hacer ver (acaso a mí mismo) lo complicado que resultan las cosas a poco que se avanza en ellas, trabajar en equipo, es para mí una tarea pendiente. Más aún tratándose de esto que tratamos nosotros.

dec
27-08-2007, 22:36:10
Hola,

... Pero también puede que le de demasiadas vueltas a algunas cosas, en detrimento de otras tal vez más importantes. Digo, para concretar, que, llegados a este punto, veo más factible mantener "paquetes" de componentes, tantos como sean menester, más bien que un sólo paquete que los incluya a todos... lo que se me hace una tarea ya no ardua, sino tal vez demasiado complicada, imposible, vaya.

delphi.com.ar
27-08-2007, 22:39:24
Es que no se si resulta absurdo desarmar y volver a armar, digamos los componentes que he subido ya estan en un paquete "cerrado" y funcionando... ¿Tiene sentido desarmarlo para meterlo en otro?... o sería conveniente en lugar de tener un paquete premium con cosas preexistentes, desarrollar cosas nuevas y crear un sector premium donde se puedan bajar cosas "exclusivas".

dec
27-08-2007, 22:43:41
Hola,

Federico, antes mencioné que me parece que no has enlazado al archivo correcto. Echa un vistazo a ver.

Respecto de desarrollar cosas nuevas y tal... pues hombre, ¿qué va uno a decir? Desde luego que estaría bien. Y respecto de desarmar un paquete para armar otro... bueno... la intención (si bien no muy definida) aseguro que era buena.

Otra cosa es que la experiencia diga que no se iba por buen camino. Yo mismo estoy diciendo que acaso fuera mejor armar un "superpaquete" que incluya otros paquetes. De hecho me parece que este sería el único camino asumible.

Y tal vez, llegados a este punto, cabe preguntarse lo que tú te preguntas, ¿merece la pena siquiera el "superpaquete" teniendo en cuenta que incluiría componentes que ya están disponibles por separado? Tal vez no merezca la pena.

delphi.com.ar
27-08-2007, 23:00:14
Federico, antes mencioné que me parece que no has enlazado al archivo correcto. Echa un vistazo a ver.
Tienes razón, enlacé otro paquete. (¡Corregido!)

Con respecto al resto, en mi opinión personal, crearía paquetes para las cosas aisladas, siempre que respeten una naturaleza similar. Para paquetes como el mío los dejaría como están, echales un ojo y creo que me entenderas.

Saludos!

dec
28-08-2007, 01:04:05
Hola,

Antes se me pasó comentar una cosa y es que se me ocurre que tal vez se podría partir de un paquete de componentes, mejor dicho, crearlo de cero, de modo que se añadieran a él componentes, o bien adaptándolos, o bien pensados específicamente para dicho paquete.

Me explicaré. Ahora mismo existe CCD. Pero CCD no es un conjunto de componentes "sin más". Son componentes que comparten unos tipos, unas excepciones, unos recursos... cumplen con unas reglas, en fin, conforman el paquete CCD. ¿Está mal, esto?

Una cosa no quita la otra, en mi opinión. El tema no estaría tanto en reunir paquetes en un paquete más grande... el tema estaría en contar con unos componentes específicamente creados en el ClubDelphi, y que se note. Pongo el ejemplo de un par de componentes que he añadido a CCD.

Estos componentes no se pensaron para CCD, pero, se han adaptado de tal forma que ya no se sabe si se forjaron ahí o dónde. No sé si me explico bien. Tal vez no se trate, como dices, Federico, de añadir componentes sin ton ni son, sino todo lo contrario.

Se trata de guardar unas reglas, de que los componentes CCD tengan cierta consistencia. Hasta ahora (si bien es cierto que sólo hay nueve componentes) se siguen ciertas reglas. Y lo de menos es qué reglas se sigan, siempre que sean algunas.

Claro que decir "voy a coger todos los componentes de Federico y de Neftalí y de Julián" y los voy a meter en CCD... lo mismo es un error, pero, ¿qué tal si se recoge algún componente de cada? Siendo código libre, como lo es, pues lo mismo no hay ningún problema.

Y al cabo conformar un paquete de componentes que se pudieran presentar como "hechos en el ClubDelphi"... y no sólo para usuarios Premium sino para cualquier usuario. No sé... no sé... a ver qué opinináis vosotros. :)

PD. Antes dijiste tú mismo Federico de "hacer cosas nuevas", pues bien, CCD (o cualquier otro paquete) puede ser apropiado para añadir cosas nuevas, es decir, componentes nuevos, pero, que tengan en cuenta ya pertenecer al paquete en cuestión, que haga uso de sus excepciones, en fin, que se sepa perteneciente al paquete en cuestión.

PD2. En definitiva, crear o adaptar componentes de manera que hereden (siempre dentro de lo posible) de un componente "común" a todos, tal como se hace en los Indy, por ejemplo, que hay un "TIdBaseComponent", pues que hereden de "TCCDBaseComp"... y esto por poner un ejemplo... que ya está en marcha.

dec
28-08-2007, 06:26:02
Hola,

Otra vez yo... sólo para decir que ahora mismo ya no hay "paquetes" para esta o aquella versión de Delphi en CCD, sino que hay un paquete "Runtime" y otro "DesignTime". Dicho paquete puede usarse para Delphi 7 (estoy casi seguro aunque no lo he podido probar) y para Delphi 2007.

Tal vez para versiones anteriores de Delphi también, y para Delphi 2006, por ejemplo. Por el momento el código fuente de los componentes (y esto sin probarlo, como ya he dicho) me parece que no dará demasiados problemas entre distintas versiones de Delphi, al menos a partir de Delphi 7.

Delphius
28-08-2007, 06:57:27
Bueno, no quiero que esto se convierta en un monologo...

Si bien yo he cedido esos simples componentes, en cuanto pueda haré un esfuerzo y un hueco en mi agenda para contribuir en esto.
Es cierto lo que dice Dec, el trabajo en grupo es dificil. Y lo se por experiencia. No es sencillo coordinar los cambios, tal sea buena idea implementar una "política de control de cambios". No tiene que ser rebuscada.

Por algo yo decía que cuando uno inicia un "proyecto" de desarrollo (o de mantenimiento, o cualquier otro) que sea esa persona la encargada de establecer las pautas. De modo que se consiga una mejor libertad y no sea un solo caos mayor.
Creo que es más fácil dirigir un grupo de 10 que otro 100. Si se propone un formato estandar y haciendo que cada "grupo" lo siga, se puede dejar la "libertad" de que cada grupo coordine su trabajo a su manera.... de cualquier manera, si alguien nuevo entra al grupo sabe el estandar, el formato, la presentación. El grupo se "amolda" a las necesidades y circunstancias.

Con respecto a lo de paquetes... yo no opino ya que de manejo y creación de paquetes no tengo conocimientos.

Saludos,

Emilio
28-08-2007, 08:26:16
Tal vez es el momento de estrenar el Project Tools (http://www.clubdelphi.com/foros/project.php) que para eso precisamente está.

José Luis Garcí
29-08-2007, 20:02:26
Probado los componentes puestos hasta ahora, comentar que algunos no entiendo como funcionan, seria recomendable, aclaraciones o demos, os comentare con más detalle, pero dentro de lo visto hay algunos Cojo...:rolleyes: Fabulosos. sigo trabajando en nuevos compos.

dec
31-08-2007, 11:51:53
Hola,

Ya hay un componente más. A alguno de vosotros os sonará, puesto que está basado en cierta unidad que publiqué yo mismo no hace mucho en los Foros. No os diré más, para así haceros un poco más de ganas y que descargéis CCD... si os place:

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

dec
01-09-2007, 04:30:33
Hola,

Bueno. Acabo de añadir a CCD el componente "TMultiAlarms", que, dicho así parece "mucho" pero, en realidad no tiene muchas pretensiones, aunque puede ser útil. Es un sencillo componente que guarda una colección de "alarmas". Cada alarma tiene asignada, básicamente, una fecha y una hora. El componente se "activa" y un "timer" se pone en marcha... que va comprobando la hora del sistema con la hora de todas las alarmas... y cuando llega el momento se dispara su evento "OnAlarm" para la alarma o alarmas correspondientes.

En fin. Seguramente falte limarlo un poco, pero, ya parece funcionar como se espera.

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

PD. Lo mejor es el icono del componente... me ha dado por tratar de dibujar una "campana"... y bueno... ¡parece que no ha quedado tan mal! :)

dec
01-09-2007, 08:31:22
Hola,

Bueno. Pues he añadido ya un archivo "Leeme", uno "Cambios", otro "Errores",... he hecho algunos cambios, en fin. :)

Edito: Acabo también ahora de añadir el nuevo componente "CCDFooterButtons". Ya van 12 componentes. :)

José Luis Garcí
01-09-2007, 22:28:14
Fabuloso Dec he probado varios de los componentes y muy buenos, hay que ver no seras Churrero, por que te salen como churros:D:D, yo sigi atascado aqui con dos componentes que estoy creando y me dan la lata, tan pronto esten los pondre a decición del personal.

dec
02-09-2007, 02:40:46
Hola,

Na... si te fijas todos los componentes son muy sencillos, ahora bien, de todos los intentos que he llevado a cabo por juntar en un paquete "del ClubDelphi" varios componentes, este es el más avanzado, con todo y ser muy sencillo... Pero no estoy descontento. Tú verás si te conviene ceñirte al paquete (y sus "reglas") en tus componentes. :)

PD. Estoy esperando que Julián se anime y cuelge por aquí sus componentes... puesto que tengo pensado un "TCCDTorpedoPradera" que al final voy a terminar implementando por mi cuenta... y riesgo. :) :D

Héctor Randolph
02-09-2007, 03:54:42
Tengo un componente que deseo compartir, ahora mismo estoy haciendo algunas pruebas antes de subirlo.

Mi pregunta es ¿cuál es el estándar que están siguiendo en el código?

dec
02-09-2007, 03:59:35
Hola,

Bueno... algo se menciona más arriba en este mismo Hilo (http://www.clubdelphi.com/foros/showpost.php?p=226240&postcount=27). Si tienes alguna duda no dejes de comentarlo, y, por otro lado, si quieres, sube el componente y trato de adaptarlo (si no lo está ya), puesto que ahora mismo tengo más en la cabeza "lo que se sigue" en el paquete CCD... en todo caso, mirando el propio código del resto de componentes tal vez también te hagas una idea Héctor.

PD. Voy a plantearme un documento (que incluir junto a los componentes) que trate de resumir, no ya las reglas que se han de seguir (que estas pueden cambiar según se decida), sino las reglas que se están procurando seguir hasta ahora, al menos.

Héctor Randolph
02-09-2007, 04:05:36
Bien, ahora mismo estoy modificando el código para enviarlo.

dec
02-09-2007, 05:17:40
Hola,

Bueno. Aunque incompleto, he subido ahora mismo CCD de forma que incluye un archivo "desarrollo.txt" donde podrán encontrarse ciertas "reglas" a tener en cuenta. Además he solucionado algún que otro pequeño error... en definitiva, podéis si queréis descargar la "última actualización" (¡Extra, extra!) de los componentes CCD.

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

Delphius
02-09-2007, 05:55:11
Dec, hombre, te estás tomando muy en serio esto.
Nos vas a dejar sin nada que hacer después:D:)

Dejame que termine con mis lios... ¡y me pongo al día!
Saludos,

dec
02-09-2007, 06:01:36
Hola,

No; no, en realidad me entretengo con ello. Una vez empieza uno con algo... Pero, vamos, que en cualquier momento se pueden aportar todas las críticas que sean menester. :)

José Luis Garcí
02-09-2007, 14:45:01
Os mando un nuevo componente, con su ejemplo, el componente es funcional, pero hay dos cosas que no logro que funcionen bien:o, la primera, es el evento Onclick:confused:, echarle un vistazo y me dicen cual es error o lo modifican y echo un vistazo, para saber como se hace correctamente, el segundo, aún siguiendo la lectura de archivos, otros componentes y mis libros de delphi sigo sin que mi bimap del componente funcione y se muestre en la paleta:confused:.

Aun sin esto, funciona, no me ha dado errores.

Probrar, cambiar, comentar, sobre todo a Dec, he procurado seguir dentro de lo que entiendo, las reglas para la creación del componente, por favor echale un vistazo, modificalo y ponlo ya modificado para echar un vistazo y corregir, lo que este mal, para mis próximos componentes.

Caral
02-09-2007, 14:53:47
Hola
A mi me gustaria aportar, pero en el caso de los componentes, como en otras cosas, estoy verde.:D
Solo lo comento para que no penséis que Caral no quiere aportar, no, no sabe.:D
Saludos

José Luis Garcí
02-09-2007, 14:55:45
Caral e visto tu codigo, si tu estas verde te aseguro que yo soy incoloro, de todas maneras, sabemos que tu siempre echas una mano, así que sin problemas.

Héctor Randolph
03-09-2007, 04:41:32
Me he quedado en el camino porque no sé si los componentes son exclusivos par a Delphi 2007.

Saludos

dec
03-09-2007, 04:53:36
Hola,

No; no lo son. O no tienen porqué serlo, vamos... ¿Por qué lo dices? :)

Héctor Randolph
03-09-2007, 06:14:03
Pues, no sé es que estoy acostumbrado a ver paquetes diferentes para cada versión.

Además hice una prueba con Delphi7 y no me funcionó, pero si me dices que en principio no están hechos exclusivamente para D2007, entonces es probable que yo este haciendo algo mal.

Continuo con las pruebas y ya les avisaré.

Saludos

dec
03-09-2007, 06:30:52
Hola,

Ahora mismo hay dos paquetes: para tiempo de diseño y para tiempo de ejecución. No son para una versión de Delphi especialmente. Desde luego sirven para Delphi 2007, intuyo que también para Delphi 7, y tal vez más allá...

El asunto no es tan sencillo (me parece) como preparar paquetes para distintas versiones de Delphi. ¿Qué aportarían los paquetes? Supongo que hay que hacer pruebas en distintas versiones de Delphi (si se ve preciso) para determinar que hay que hacer un paquete "especial" para X versión de Delphi.

Ahora mismo no hay "meta código" en los componentes, no se diferencia entre distintas versiones de Delphi, no se tiene en cuenta esto, pero, en caso de hacerlo, esto sería lo primero, antes aún que los paquetes para distintas versiones de Delphi, intuyo.

Además los paquetes "universales" actuales no son los ".project" de Delphi 2007, sino los ".dpk" de toda la vida, precisamente, para que pueda hacerse uso de ellos en versiones anteriores de Delphi. O sea que no es decir que sólo hay paquetes para Delphi 2007, sino que en teoría podrían usarse para cualquier versión de Delphi, aunque, la realidad nos pondría los pies en el suelo, pero, habría que probar antes...

Por otro lado Héctor, decir que "no te funcionan en Delphi 7"... ¿cómo es que no funcionan? ¿Encuentras algún error? ¿Cuál? :)

PD. Yo venía aquí a decirle a José que he tratado de poner un poco de orden (muy humildemente) en el componente "CCDLabelsopr" y bueno, he conseguido algunas cosas (puedes verlo en el archivo adjunto José) sin embargo otras aún se me escapan. No me queda claro, no me parece intuitivo el uso del componente, pero, es mi opinión, obviamente.

El tema está en que el componente promete por momentos, pero, no doy en el clavo con los colores a utilizar, y quedan bastantes cosas por limar, ni siquiera entiendo bien el "algoritmo" que mueve el asunto, y eso que tengo el código fuente en mis narices... lo que es estar cansado... En todo caso José no dejes de echar un vistazo al archivo adjunto, a lo mejor tú eres capaz de poner las cosas un poco más claras, que al fin y al cabo eres el arquitecto. :)

Héctor Randolph
03-09-2007, 07:04:41
Por otro lado Héctor, decir que "no te funcionan en Delphi 7"... ¿cómo es que no funcionan? ¿Encuentras algún error? ¿Cuál?


je,je, sabía que no era correcto decir que tengo un error sin decir cuál es, pero es que primero quería saber si los paquetes eran para D2007 para ir descartando antes de entrar en detalles.

Ultimamente mi instalación de Delphi 7 ha estado falllando con mucha frecuencia. Algunas veces se resuelve el problema reiniciando el IDE, pero parece que ahora no será suficiente y después de todo creo que ya llegó el momento de reinstalar. No hagas mucho caso que seguramente el problema lo tengo solamente en mi máquina.

Por lo pronto te puedo enviar el componente tal cual está. Este componente estuvo alguna vez en el club, me gustaría que lo revises y me des tu opinión. De los demás compañeros también me gustaría escuchar una opinión claro está.

Saludos

dec
03-09-2007, 14:17:33
Hola,

Dos cosas. Primero, que cuando esta madrugada escribía que no terminaba de hacerme con el componente de José... no quería menospreciarlo en absoluto. Ni mucho menos. También he escrito y se puede leer que me parece un componente curioso. A ver si eres capaz de dejarlo "puesto a punto" José.

Segunda. Que mirados por encima los componentes que adjuntaste Héctor uno no puede sino pensar que están muy bien. Mucho mejor de lo que yo habría podido hacerlos, quiero decir, que me han parecido estupendos. Quisiera hacer algún cambio (para nada en los componentes). *

Separar en varios archivos el código de los componentes, un archivo por "clase", podría decirse y, sobre todo, un archivo por componente. Luego habría que pensar en dónde colocar el componente "Data aware", si en otra "pestaña" distinta, o entre el resto, al menos por el momento.

* Pero dudo mucho en dejarlos como están... y olvidar tal vez la regla impuesta por mí mismo quién sabe si absurdamente de "una unidad por componente"...

dec
03-09-2007, 14:47:50
Hola,

Ya están incluidos en CCD los componentes "CCDAutoCompleteEdit" y "CCDDBAutoCompleteEdit". Ea. :)

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

Héctor Randolph
03-09-2007, 16:52:02
Muchas gracias David por añadir mi componente. Yo también habia pensado en poner los fuentes por separado para cada componente, e incluso habia pensado en quitar el componente data-aware. Bueno, por lo pronto es el primer componente que se puede ligar a un Dataset, pero tal vez después aparezcan otros y entonces será conveniente tener otra pestaña como es costumbre.

Pues yo por acá sigo con problemas con Delphi7, el error en particular surge cuando intento compilar el paquete CCD_DelphiR.dpk.


[Error] RLINK32: Too many resources to handle.


Aún no he reinstalado el Delphi, le voy a dar otra oportunidad, intentaré instalar los componentes manualmente.

Saludos

dec
03-09-2007, 16:56:59
Hola,

Si crees que puede ser un problema de la instalación de Delphi en tu sistema, tal vez lo suyo sería primero que nada que algún otro compañero con Delphi 7 probara a instalar los componentes. Si obtiviera el mismo error podríamos ponernos entonces manos a la obra a tratar de solucionarlo.

delphi.com.ar
03-09-2007, 17:25:55
[Error] RLINK32: Too many resources to handle.


Aún no he reinstalado el Delphi, le voy a dar otra oportunidad, intentaré instalar los componentes manualmente.
No hace falta!!: no lo hagas!!!
Solamente donde en el paquete hace referencia al archivo de recursos como: "*.res" (o dfm), cambia el asterisco por el nombre del proyecto.

Saludos!

dec
03-09-2007, 17:38:54
Hola,

Federico, ¿entonces conviene poner el nombre del archivo "res" en lugar de dejarlo con el asterisco?

Héctor Randolph
03-09-2007, 17:53:50
No hace falta!!: no lo hagas!!!
Solamente donde en el paquete hace referencia al archivo de recursos como: "*.res" (o dfm), cambia el asterisco por el nombre del proyecto.


Es verdad, funciona :). Ya pude instalarlos sin problemas.

De la que me he salvado, ya estaba calculando el tiempo que me llevaría reinstalar todos mis componentes, plugins, expertos, etc.

Gracias.

Héctor Randolph
03-09-2007, 21:30:21
Estoy probando los componentes en Delphi7 y van de maravilla, el único detalle que he encontrado es al momento de pulsar sobre el botón AboutCCD.

http://img48.imageshack.us/img48/6317/screenzw2.jpg (http://imageshack.us)

Me parece que en Delphi7 el componente Bevel no tiene la propiedad ExplicitWidth. Tal vez, se tenga que considerar remover el Bevel o en su defecto intentar no invocar dicha propiedad para que no cause conflictos.

Saludos

José Luis Garcí
03-09-2007, 22:07:18
Perdona por la tardanza en responder Dec, acabo de bajar el archivo y lo miro en unos minutos, lo que menos puedo pensar es que alguno de los que estamos aqui, pretenda ofender, o descalificar, a alguno de los miembros, ya dije que las criticas, observaciones y demas, sirven tambien para aprender, y como dice un tio mio uno no se enfada si no quiere.

En cuanto al componente comentarte que hay un procedure el reactivar que es para eleminar, ya que el componente me ha dado, varios problemas a lo largo de su creación, empezo partiendo de un TLabel, para pasar a un TcomponentCuston, en principio el parpadeo2 hacia un efecto raro ya que cundo los labels secundarios eran no visible, el label primario cambiaba su posición, por eso el parpadeo dos se hace con otro color para evitar el cambio de posición, el cargar la parte del Font a los label, provee varias maneras y encontre este sistema de otro componente free, pero la verdad, no lo entiendo, pero funciona, es una de las cosas que estudiare y así varios más, corregire y volvere a poner, procurare poner más aclaraciones, pero ten encuenta que no soy un experto y me pierdo un monton, que el componente te de buena pinta, ya dice mucho.

José Luis Garcí
03-09-2007, 22:21:11
DEc acbo de ver el archivo corregido, me quito el sombrero, no he podido probar el componente con las correcciones, pero desde luego esta más claro que mi codigo un rato largo, no puedo probar el componente ya que este equipo Tiene el W. Vista y tengo instalado el turbo Delphi, pero si mañana llego tempreno lo probare en uno de los otros ordenadores.

delphi.com.ar
03-09-2007, 23:37:02
Federico, ¿entonces conviene poner el nombre del archivo "res" en lugar de dejarlo con el asterisco?
No tengo bien presente el motivo, se supone que el asterisco no es un comodín como en el sistema operativo, sino que es reemplazado por el nombre de la unit (o archivo). Ademas tengo unos cuantos paquetes con la misma arquitectura sin existir conflicto entre recursos. Por este motivo, revisé un poquito el código y tengo un par de detalles que comentar:

Setear el paquete de RunTime como tal y lo mismo para el de DesignTime.
No se porque han decidido que el archivo rsCCD.inc no sea una unit, lo que terminan haciendo es incluyendo las constantes para cada unit donde se incluyan sin reutilizarlas.


Saludos!

basti
04-09-2007, 03:00:24
Bueno, mi pequeña aportación a los componentes. Son dos componentes "DB Aware".

El primero es muy sencillo, se trata de un "label" que cambia según el valor de un campo boolean (o cualquier tipo de campo con dos valores posibles).

El segundo es una especie de "Grid" no editable, con filas y columnas donde cada registro es una celda y se puede mostrar un texto y una imagen por cada registro.

También va una demo con los dos componentes.

Tengo algún componente más para aportar, a medida que los vaya adaptando al formato del club los iré subiendo.

968

dec
04-09-2007, 07:17:43
Me parece que en Delphi7 el componente Bevel no tiene la propiedad ExplicitWidth. Tal vez, se tenga que considerar remover el Bevel o en su defecto intentar no invocar dicha propiedad para que no cause conflictos.


Pues sí. Habrá que quitar ese "bevel" del medio. Tal vez sea algo drástico, pero, ¿a alguien se le ocurre otra forma? :)


DEc acbo de ver el archivo corregido, me quito el sombrero, no he podido probar el componente con las correcciones, pero desde luego esta más claro que mi codigo un rato largo, no puedo probar el componente ya que este equipo Tiene el W. Vista y tengo instalado el turbo Delphi, pero si mañana llego tempreno lo probare en uno de los otros ordenadores.


Na... no es para tanto... me limité a quitar algunos "Getters" que no eran realmente utilizados. Tú podrías a partir de como está el componente ver si puedes ponerlo "a punto", puesto que no me extrañaría que quitases cosas demás... :(


No tengo bien presente el motivo, se supone que el asterisco no es un comodín como en el sistema operativo, sino que es reemplazado por el nombre de la unit (o archivo). Ademas tengo unos cuantos paquetes con la misma arquitectura sin existir conflicto entre recursos. Por este motivo, revisé un poquito el código y tengo un par de detalles que comentar:

* Setear el paquete de RunTime como tal y lo mismo para el de DesignTime.
* No se porque han decidido que el archivo rsCCD.inc no sea una unit, lo que terminan haciendo es incluyendo las constantes para cada unit donde se incluyan sin reutilizarlas.


No entiendo lo de "setear" los paquetes "RunTime" y "DesignTime". ¿Puedes explicarlo como para un niño de 10 años? Gracias. :)

Respecto del archivo ".inc"... la verdad es que tengo esa costumbre y acaso tenga que quitármela. Pero, ahora mismo ningún componente (salvo error) incluye dicho archivo ni no hace uso del mismo de alguna manera. Además... ¿no podría pasar lo mismo si dichas "constantes" estuvieran en una unidad? No sé... no estoy seguro... acabo de despertarme, leñe. :)


Bueno, mi pequeña aportación a los componentes. Son dos componentes "DB Aware".


Estupendo. Lo único que yo no voy a poder "revisarlos" hasta esta tarde... puesto que esta mañana... en fin, estamos de limpieza en casa y me va a tocar liarme con la terraza, la cocina, el baño o qué sé yo esta mañana... :( ;) :)

Actualización: El formulario "acerca de..." no contiene ya el componente "Bevel".

delphi.com.ar
04-09-2007, 14:47:39
No entiendo lo de "setear" los paquetes "RunTime" y "DesignTime". ¿Puedes explicarlo como para un niño de 10 años? Gracias. :)
Simplemente setear desde Project \ Options \ Description :

Usage options Select Design Package if you want the package to be installable on the Component palette.
Select Runtime Package if you want the package to be deployable with an application.
Select both Design Package and Runtime Package if you want the package to be both installable and deployable.
If neither Design Package nor Runtime Package is checked, the package cannot be installed on the Component palette or deployed with Delphi applications. Use this option for packages that exist only to be referenced (required) by other (design-time) packages.




Respecto del archivo ".inc"... la verdad es que tengo esa costumbre y acaso tenga que quitármela. Pero, ahora mismo ningún componente (salvo error) incluye dicho archivo ni no hace uso del mismo de alguna manera. Además... ¿no podría pasar lo mismo si dichas "constantes" estuvieran en una unidad? No sé... no estoy seguro... acabo de despertarme, leñe. :)
Yo no veo nada mal que las constantes de ese tipo esten todas dentro de una única unit, lo que no me agrada es que se utilice el método de inclusión, ya que en la práctica es como definir todas las constantes para todas las units.

Saludos!

basti
04-09-2007, 15:36:45
Estupendo. Lo único que yo no voy a poder "revisarlos" hasta esta tarde... puesto que esta mañana... en fin, estamos de limpieza en casa y me va a tocar liarme con la terraza, la cocina, el baño o qué sé yo esta mañana... :( ;) :)



Bueno, pues aprovecho para incluir un componente más, un navegador del estilo de DBNavigator con algunas funciones más, botones personalizados, búsqueda por un campo, bookmarks ...

Aquí va lo anterior y lo nuevo junto: 969

dec
04-09-2007, 16:01:45
Hola,


Yo no veo nada mal que las constantes de ese tipo esten todas dentro de una única unit, lo que no me agrada es que se utilice el método de inclusión, ya que en la práctica es como definir todas las constantes para todas las units.


Pues no lo termino de entender. Estén las constantes en una unidad o en el archivo "inc", siempre que se precisen habrá que incluir la unidad o el archivo "inc", y en todo caso puede incluirse el archivo "inc" demás... como puede incluirse la unidad. No sé. No veo las ventajas de una unidad frente a un archivo "inc" para definir constantes... aunque en este caso más que constantes son "recursos/cadenas".

Pero, vamos, también es verdad que yo uso archivos "inc" por costumbre... y que a lo mejor no estoy haciendo uso de ellos correctamente, o uso "inc" donde debería usar unidades o al revés...

dec
04-09-2007, 16:51:21
Hola,

Acabo de actualizar CCD con los siguientes cambios:


[?] El componente "CCDDBAutoCompleteEdit" se mueve a la paleta de
componentes "ClubDelphi (data aware)".

[+] Añadida la pestaña "ClubDelphi (data aware)" para la paleta de
componentes de Delphi.

[+] Añadidos los componentes "CCDDBBoolLabel", "CCDDBNavigator" y
"CCDDBImageGrid" escritos por Basti (del ClubDelphi.com).

[?] Federico Firenze: "Seteados" los paquetes para "tiempo de ejecución"
y "tiempo de diseño".

[?] Héctor Randolph: Eliminado el "Bevel" del formulario "acerca de..."
para evitar problemas con una propiedad del mismo no disponible en
Delphi 7 (y versiones anteriores).


Ahora veo que se me empieza a escapar CCD... parece mentira la diferencia que cada persona tiene a la hora de codificar, de escribir código fuente... unos lo hacen de una forma, otros de otra... yo soy el primero en incluirme en unos u otros, que no estoy diciendo nada malo de nadie, sino que me llamó la atención esto que digo.

Bueno. A ver si alguien se anima y prepara los iconos para los tres últimos componentes que se han añadido. :)

delphi.com.ar
04-09-2007, 16:56:40
Pues no lo termino de entender. Estén las constantes en una unidad o en el archivo "inc", siempre que se precisen habrá que incluir la unidad o el archivo "inc", y en todo caso puede incluirse el archivo "inc" demás... como puede incluirse la unidad. No sé. No veo las ventajas de una unidad frente a un archivo "inc" para definir constantes... aunque en este caso más que constantes son "recursos/cadenas".

Pero, vamos, también es verdad que yo uso archivos "inc" por costumbre... y que a lo mejor no estoy haciendo uso de ellos correctamente, o uso "inc" donde debería usar unidades o al revés...
Recuerda que el INCLUDE es similar al de C donde se incluye explícitamente el archivo donde sea llamado, algo que podemos imitar con un copy paste :p...
Bueno, si usamos un recurso desde varias units distintas y este recurso estará dentro de un archivo incluído dentro de cada unit, entonces se incluriá para cada unit por separado sin reutilizarlo.
Fíjate el ejemplo que te subo, busca tu nombre en los recursos de los dos ejemplos.

Saludos!

delphi.com.ar
04-09-2007, 17:17:20
Adjunto un ejemplo mas "visible".

Saludos!

dec
04-09-2007, 17:49:09
Hola,

Acabáramos. Ahora lo he visto claro. Pues inmediatamente me quito la costumbre de usar archivos "inc"... como si tal cosa. Es cierto que ha veces vienen muy bien (cuando propiamente se quiere que el contenido se "incluya" en un determinado lugar, en cuyo caso no pueden usarse unidades), pero, duplicar los recursos por duplicarlos... nanai. Así que haré los cambios oportunos en CCD. Y me temo que ciertos proyectos que tengo en marcha también.

Muchas gracias Federico. Nunca te acostarás sin saber una cosa más, suele decirse, y hoy es cierto para mí gracias a ti. :)

dec
04-09-2007, 17:59:10
Hola,

Ya está subido CCD haciendo uso de la nueva unidad "URecursosCCD.pas" en lugar de "rsCCD.inc". :)

Actualización: Ya he añadido iconos para los tres últimos componentes. Pero siempre pueden mejorarse... :)

José Luis Garcí
04-09-2007, 21:42:37
Dec e corregido los fallos que en principio encontre harora estoy atascado en el tema de que la clase de la que parte el componente, no tiene la propiedad Transparente, sabe si a una de las dos clases usadas (TcomponenControl o TWinControl), es posible hacer el fondo transparente, o hay alguna otra clase.

Emilio perdona abri otro hilo con este tema en el foro de OOP este es el enlace por si estimas oportuno eliminarlo http://www.clubdelphi.com/foros/showthread.php?p=228346#post228346

Héctor Randolph
05-09-2007, 06:36:42
Acabo de cambiar algunos iconos, si les gustan podemos incluirlos en el paquete.

http://img211.imageshack.us/img211/766/screenxj4.png (http://imageshack.us)

Los iconos corresponden a los componentes CCDDBBoolLabel, CCDRichEdit, CCDDBImageGrid y CCDLabelLink.

Por cierto, el componente CCDDBImageGrid me pareció excelente. Esto va tomando forma :)

Subí el archivo CCD.zip que contiene el *.dcr con los nuevos iconos.

Saludos

dec
05-09-2007, 07:53:54
Hola,

José, no sé yo si toqué algo en ese sentido, la verdad es que creo recordar que sí, empero, me parece que puedes derivar el componente de "TGraphicControl". De todos modos, podrías plantear la cuestión en los Foros de modo que pudieras obtener ayuda de más gente.

Héctor, los iconos son estupendos. Ya están añadidos y CCD actualizado en consecuencia. :)

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

dec
06-09-2007, 19:49:08
Hola,

Acabo de añadir a CCD los componentes que el compañero Neftalí (http://neftali.clubdelphi.com/) tiene publicados en su página Web. Ahora mismo se cuentan ya 24 componentes en el paquete. No es que quiera mencionar la cantidad, pero, me parece un número muy bueno teniendo en cuenta que empezamos ayer como quien dice a recopilar componentes. :)

Emilio
06-09-2007, 20:23:20
Acabo de añadir a CCD los componentes que el compañero Neftalí (http://neftali.clubdelphi.com/) tiene publicados en su página Web. Ahora mismo se cuentan ya 24 componentes en el paquete. No es que quiera mencionar la cantidad, pero, me parece un número muy bueno teniendo en cuenta que empezamos ayer como quien dice a recopilar componentes. :)

Ciertamente me parece un número bien respetable teniendo en cuenta que la criatura se encuentra todavía tomando biberones, si la cosa continúa a buen ritmo la JVCL se va a quedar pequeña.

Creo conveniente que este hilo se haga público por varias razones, ya se ha llegado al punto de la realidad, es decir, como todos sabéis infinidad de veces se proponen hacer proyectos y al final prácticamenente nunca cuaja nada, en este caso sí ha cuajado, en buena parte gracias a la coordinación de Dec, por supuesto sin menos preciar el resto de aportaciones, entiendo que todo proyecto requiere un lider, en este caso, sin saber cómo, tampoco importa, dec ha liderado el tema y lo ha hecho muy bien, el Club está en racha de creatividad en todos los sentidos.

Pues lo dicho creo conveniente, hacer ya público tanto este hilo como los componentes que contarán también con un subdominio propio.

http://componentes.clubdelphi.com (todavía no activo, en breve)

Sin más dilación creo que si os parece bien, dec tú como coordinador podría s mover el hilo y luego hablamos ya sobre el tema del subdominio.

dec
06-09-2007, 20:33:46
Hola,

Bueno. En realidad no es que quisiera liderar nada, de hecho ya he dicho más arriba que a partir de N componentes el asunto superó mi capacidad de control. Los primeros componentes los he "editado" y adaptado "a mi manera", por decirlo así, pero, los últimos componentes no he podido, querido ni sabido hacerlo.

En definitiva, que es necesario el concierto de todos los que han aportado componentes (porque quién mejor que ellos, que han escrito el código), de todos los que quieran aportar nuevos componentes, de todos los que quieran colaborar indicando errores y formas de corregirlos, de todos, digo, los que de alguna manera quieran echar una mano de la manera que sea.

PD. Muevo este hilo a "OOP", entonces... :)

José Luis Garcí
07-09-2007, 22:38:41
Ya pude terminar los tres componentes en los que estaba trabajando :p, me ha costado, tengo que decir que gracias a Dec logre que el componmente perdiera peso, y mejorara, en este componente lo unico que me disgusta es un lijero prpadeo, en los otros dos me disgusta mas los iconos, pero bueno como siempre a la decición del personal, ya me direis. Todos con pequeñas demos a falta de compilar.

dec
08-09-2007, 09:28:24
Hola,

Bueno trabajo José. En cuanto pueda voy a añadirlos a CCD. Noto, sin embargo, que usas variables globales para lo que podrían ser (si no me equivoco) miembros privados de un componente, o acaso propiedades del mismo, pero, en todo caso mantener dichas variables "dentro" del componente. Pero, vamos... fuera de esto (que voy a corregir si puedo) creo que podremos contar con tres nuevos componentes en CCD. :)

dec
08-09-2007, 09:55:33
Hola,

Ya están añadidos los componentes José. ¿Te fijaste en "CCDEditZoom"? Creo que funciona como se espera, excepto que no respeta la fuente original del Edit. Es decir, uno espera que la fuente sea la original, hasta que se pase el ratón por encima, y entonces se viera el efecto "Zoom", pero, la fuente del Edit cambia nada más ejecutarse el programa. Sigue haciendo el efecto Zoom, pero, pasa de "grande a más grande", en lugar de "normal a grande", no sé si me explico. :)

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

José Luis Garcí
08-09-2007, 10:16:02
Dec no se si te entendi, la idea es si pasas el raton por encima, solo hace que esl texto salga en negrita, mientras tengas el cursor del raton encima, desde que sales elimina la negrita, , en cambio cuando entras, si esta activo el zoom, cambia el tamaño del font, y multiplica por tres, el ancho y la font, el largo depende de si esta rellena el MaxWidth que limita el largo, al salir, devuelve al tamaño normal, pero en cuanto sales devuelve a los valores iniciales, no se si es que algo esta fallando, comentame si tal cosa y lo modifico, y de paso le añado un campo nuevo ValZoom y hacemos el zoom de l valor que le demos, que te parece. Que yo recuerde del FOnt, sólo he tocado, bold y size, pero no la fuente.

Te parece correcto como ha quedado el CCDLabelSopr, con lo unico que no he quedado del todo contento es con el ligero parpadeo.

dec
08-09-2007, 10:33:11
Hola,

Bueno. Respecto de "CCDLabelSopr" se me hace un poco raro su uso, no sé si me explico... a veces uno hace cambios en las propiedades pero no se ve el resultado... luego en tiempo de ejecución sí que se ven esos cambios... pero, resumiendo, creo que pueden lograrse efectos curiosos en un "label" y que puede venir bien en un momento dado.

Respecto de "CCDEditZoom" el tema es este. Cuando uno sitúa un "CCDEditZoom" en el formulario, la fuente de este es la que por defecto es, o sea, digamos "Arial 10". Entonces uno esperaría (al menos así me ha pasado a mí) que en tiempo de ejecución, al pasar el ratón por el Edit su fuente pasara a ser "Arial 20" (por ejemplo).

Pero el caso es que cuando ejecutas el programa el Edit que tenía "Arial 10" como fuente pasa a tener "Arial 20", por ejemplo, y cuando pasas el ratón por encima su fuente cambia a "Arial 30". Yo creo que en tiempo de ejecución el componente debería tener como fuente "Arial 10" y cuando pasaras el ratón por encima "Arial 20".

No sé si ahora se entiende mejor. :)

José Luis Garcí
08-09-2007, 11:04:47
Oido Cocina, me meto con el componente y lo compruebo, aunque la verdad, en mi delphi 6 no he notado ese cambio, pero hare una rutina de comprobación ene el programa de ejemplo, en cuanto al Labelsopr, según mi idea inicial es su uso sobre imagenes, para que no exista la posibilidad de que no se lea el label por coincidir el color con parte de la imagen de fondo, por eso lo ideal es usar un color Vivo de borde con un color fuerte de texto central, de todas maneras, mirare el problema, del EditZoom y que te parece la idea del valzoom.

basti
08-09-2007, 11:49:28
Hola,

Respecto de "CCDEditZoom" el tema es este. Cuando uno sitúa un "CCDEditZoom" en el formulario, la fuente de este es la que por defecto es, o sea, digamos "Arial 10". Entonces uno esperaría (al menos así me ha pasado a mí) que en tiempo de ejecución, al pasar el ratón por el Edit su fuente pasara a ser "Arial 20" (por ejemplo).



Yo tampoco veo ese efecto, cuando se ejecuta aparece con Arial 10 y cuando se entra aumenta de tamaño. De todas maneras quizás se arreglase poniendo una propiedad como EnterFont del tipo TFont donde se pudiese especificar el tipo de letra al entrar en el edit, esto lo haría también más adaptable. Me parece un componente muy interesante, se me están ocurriendo un par de sitios donde ponerlo.

José Luis Garcí
08-09-2007, 12:26:19
Basti ya que estoy trabajando en el componente se añadira tambien.

dec
08-09-2007, 12:28:21
Hola,

Una cosa más José. Existe el componente "CCDEditZoom" y el componente "CCDDBEditZoom", ahora bien, teniendo en cuenta que de ambos componentes se espera similar comportamiento, ¿por qué no heredas el segundo del primero? Y luego le añades lo necesario para que se comporte como "data aware".

De este modo cuando te plantees cambios, como ahora, no será necesario que hagas cambios en ambos componentes, sino sólo en "CCDEditZoom". ¿No te parece? :)

dec
09-09-2007, 21:13:39
Hola,

Acabo de añadir a CCD el componente CCDZoomPanel, que es un componente basado en parte en código del compañero Domingo Seoane, en parte en el artículo Zoom de Zarco Gajic (http://delphi.about.com/od/graphics/l/aa120198.htm). Se trata de un panel "lupa" que amplía en una imagen lo que esté "debajo" del ratón en un momento dado. Seguro que habéis visto ya algún componente similar. :)

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

PD. ¿Ves lo que hago Eduardo? :D

eduarcol
09-09-2007, 21:23:20
Hola,

Acabo de añadir a CCD el componente CCDZoomPanel, que es un componente basado en parte en código del compañero Domingo Seoane, en parte en el artículo Zoom de Zarco Gajic (http://delphi.about.com/od/graphics/l/aa120198.htm). Se trata de un panel "lupa" que amplía en una imagen lo que esté "debajo" del ratón en un momento dado. Seguro que habéis visto ya algún componente similar. :)

http://web.madritel.es/personales2/amcalderon/ccd/ccd.zip

PD. ¿Ves lo que hago Eduardo? :D

Pues mira que manera de pasar el domingo jejejeje, hasta envidia me da, quisiera meter en un baul estos proyecto de BD que siempre son mas de lo mismo no me permiten innovar cosas como estas :D:D

Muy bueno dec

fer21unmsm
10-09-2007, 03:20:32
Hola compañeros de club, lo prometido es deuda jeje, aquí les dejo algunos componentes que hice, claro ayudandome de los que vienen en delphi, jeje, espero les sirve, me faltó documentar ya que no tuve tiempo, pero pienso, que son autodescriptivos:)

PD: Supongo que necesitaran varias mejoras, no serán buenos pero ahi va

Saludos cordiales

Neftali [Germán.Estévez]
10-09-2007, 12:12:52
Acabo de añadir a CCD los componentes que el compañero Neftalí (http://neftali.clubdelphi.com/) tiene publicados en su página Web.

Bueno, iba a ofrecer mis componentes para añadirlos, pero veo que Dec ya se ha adelantado... :D
Espero que os sean útiles.
Todavía no me ha dado tiempo de "revisar e instalar" el engendro (pues acabo de llegar), pero en cuanto lo haga daré aquí mis opiniones y pareceres...

dec
10-09-2007, 12:15:59
Hola,


Bueno, iba a ofrecer mis componentes para añadirlos, pero veo que Dec ya se ha adelantado...


Es un ladrónnnn, que te ha robado el tiempo libreeeeeeeeee... :D :D

Julián
29-09-2007, 17:25:21
Hola, dec!!

mirando por ahí he encontrado este hilo:
http://www.clubdelphi.com/foros/showthread.php?t=45227&highlight=hamachi

en donde dec te interesa por la cosa de enviar archivos vía tcp, y por un chat. Así que ahí va la cosa: como algunos sabeis yo tengo un programa, en eterno desarrollo que es el ajedrezchat, que sirve para lo que de su propio nombre se puede deducir: chatear, y si se tercia jugar al ajedrez.

El programa puede hacer de servidor de chat y logicamente de cliente, de manera que cualquiera puede ponerse de servidor (abriendo, si hiciera falta, el puerto correspondiente en su router) y aceptar tantos clientes como quiera.

El caso es que para el chat de dicho programa uso dos com
ponentes: el TicsChatServer y el TicsChatClient , que no encontrareis en ninguna parte porque los he hecho yo y nadie mas los tiene, (excepto jhonny).

Son muy faciles de usar, pero aún asi tengo hech una demo sencilllita, que hice para jhonny cuando se los pase.

Se llaman Tics* porque estan hecho usando la librería, perdón, la biblioteca de componentes ICS de fpiette, que me gusta bbastante mas que los INDY.

Gueno, lo que quiero es saber si los veis interesantes para colección del club.

Por otra parte seoane tenia un código por ahí para enviar archivos vía tcp usando threads, que es lo que le vendría de perlas a estos componentes. Ademas de una limpieza de su chapucero código, jeje.

Así que me gustaria ponerlos, los componentes a vuestra disposición, y alguien se anima y los modifica o mejora o lo que sea, y sobre todo les añade algo como eso de seoane para que admita el envñio de archivos, pues me haría feliz, :)

Eso es todo, si lo veis bien busco el código y los subo donde me diga dec.


Un saludo!

PD: si alguien se anima hacer una versión con freepascal que funcione bajo linux, sería la felicidad completa. Hasta he pensado en pagar (¿alguien se ofrece?) por ello.

seoane
29-09-2007, 18:56:52
Por otra parte seoane tenia un código por ahí para enviar archivos vía tcp usando threads, que es lo que le vendría de perlas a estos componentes. Ademas de una limpieza de su chapucero código, jeje.

Ese código que mencionas lo puse solo como un ejemplo de como usar los componentes que traía el Turbo delphi explorer, y la verdad es que es un poco chapuza. Tiene mucho que mejorar, sobre todo la interacción con el usuario (cancelar, parar, reanudar, informar de errores, etc ...)

Lo malo es que vengo de pelearme, por culpa de un trabajito que me surgió, con un programa de intercambio de ficheros bastante complejo y ahora mismo estoy bastante cansado del tema :(

Aunque si al final me decido a hacer algo habría que decidir primero que librerías se usarían. ¿Winsock a pelo? ¿Indy? ¿Synapse? o alguna otra librería compatible con freepascal y linux. La elección es importante, ya que se convertirá en un requisito de instalación en los futuros componentes.

jhonny
29-09-2007, 20:12:14
El caso es que para el chat de dicho programa uso dos com
ponentes: el TicsChatServer y el TicsChatClient , que no encontrareis en ninguna parte porque los he hecho yo y nadie mas los tiene, (excepto jhonny).

Son muy faciles de usar, pero aún asi tengo hech una demo sencilllita, que hice para jhonny cuando se los pase.

Los tenia, por que cuando me los pasaste estaba trabajando en otra empresa diferente, en la cual tuve que formatear esa maquina rapidamente, (Bueno, no me quedo tiempo de nada :(, las razones de ese formateo rapido me las reservo :D, solo cumplia ordenes). Dias despues tuve que irme de allí para no volver, despues de eso tuve una de mis largas desaparecidas del Club y no tuve la oportunidad de entrar de nuevo al AjedrezChat, incluso hoy por hoy, tengo restringido el acceso por dicho puerto :(, ni con el putty he podido entender como saltarme esa restriccion :D, es una larga historia, quizas algun dia la contare.

Julián
29-09-2007, 21:15:17
Ese código que mencionas lo puse solo como un ejemplo de como usar los componentes que traía el Turbo delphi explorer, y la verdad es que es un poco chapuza.

Oño!, a ver si no me explique bien: El código chapucero al que me referia es el mío, no el tuyo. Que el tuyo no lo miré nada mas que de pasada, y por cierto, de chapuza nada. Otra cosa es que le falte algo.

Un saludo aclaratorio :)

seoane
29-09-2007, 22:17:21
Bueno julian, y que características piensas que puedan tener esos componentes ???. Yo me imagino uno que haga de servidor, y que tenga un solo método "listen" que dispare un thread que se ponga a la escucha en un puerto para realizar la transferencia, el método listen devuelve el puerto por el que esta escuchando. El cliente por su parte tendrá solo método "send" que envío un fichero a un puerto especifico.

Por ejemplo para realizar una transferencia, el que actúe como servidor ejecutara el método listen y el numero de puerto que le devuelva se lo pasa al cliente, el cliente por su parte usara el método send. Lo que falta es saber como mandara el servidor la información del puerto al cliente, pues si se supone que es un accesorio de un chat, ya debe de existir una conexión entre los dos, así que se puede utilizar esa.

:( Me da la sensación de que no me he explicado muy bien

dec
29-09-2007, 22:29:56
Hola,

A ver, ponersus de acuerdo. :)

PD. Pero está bien, está bien. ;)

seoane
30-09-2007, 03:12:34
Vamos a ver Julian, un primer esbozo podría ser esto:

unit transfer;

interface

uses Windows, Sysutils, Classes, Winsock;

type
EBindError = class(Exception);
EConnectError = class(Exception);
EWinsockError = class(Exception);

TFileReceiver = class(TThread)
private
FFile: TFileStream;
FReceived: int64;
FServer: TSocket;
FSocket: TSocket;
FToken: int64;
procedure Receive;
function WaitForData(Count: Integer): Boolean;
protected
procedure Execute; override;
public
constructor Create(Filename: String; Port: Integer; Token: int64);
destructor Destroy; override;
property Received: int64 read FReceived;
end;

TFileSender = class(TThread)
private
FFile: TFileStream;
FSended: int64;
FSocket: TSocket;
FToken: int64;
protected
procedure Execute; override;
public
constructor Create(Filename: String; Host: String; Port: Integer;
Token: int64);
destructor Destroy; override;
property Sended: int64 read FSended;
end;

implementation

const
BUFFER_SIZE = 32 * 1024;

{ TFileReceiver }

constructor TFileReceiver.Create(Filename: String; Port: Integer; Token: int64);
var
Addr: TSockAddr;
begin
FFile:= nil;
FReceived:= 0;
FServer:= INVALID_SOCKET;
FSocket:= INVALID_SOCKET;
FToken:= Token;
FFile:= TFileStream.Create(Filename,fmCreate or fmShareDenyWrite);
FServer:= Socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
if FServer = INVALID_SOCKET then
raise EWinsockError.Create('Socket');
Addr.sin_family:= AF_INET;
Addr.sin_port := htons(Port);
Addr.sin_addr.s_addr := htonl(INADDR_ANY);
if Bind(FServer, Addr, sizeof(Addr)) = SOCKET_ERROR then
raise EWinsockError.Create('Bind');
if Listen(FServer, 1) = SOCKET_ERROR then
raise EWinsockError.Create('Listen');
FreeOnTerminate:= TRUE;
inherited Create(TRUE);
end;

destructor TFileReceiver.Destroy;
begin
if FSocket <> INVALID_SOCKET then
CloseSocket(FSocket);
if FServer <> INVALID_SOCKET then
CloseSocket(FServer);
FFile.Free;
inherited;
end;

procedure TFileReceiver.Execute;
var
Addr: TSockaddr;
Size: Integer;
FDSet: TFDSet;
TimeVal: TTimeVal;
begin
while not Terminated do
begin
TimeVal.tv_sec:= 0;
TimeVal.tv_usec:= 10000;
FD_ZERO(FDSet);
FD_SET(FServer, FDSet);
if Select(0, @FDSet, nil, nil, @TimeVal) > 0 then
begin
Size:= Sizeof(Addr);
FSocket:= Accept(FServer, @Addr, @Size);
if FSocket <> INVALID_SOCKET then
begin
Receive;
break;
end;
end;
end;
end;

procedure TFileReceiver.Receive;
var
i: Integer;
Buffer: PChar;
Token: int64;
begin
if WaitForData(Sizeof(Token)) then
if Recv(FSocket, Token, Sizeof(Token), 0) = Sizeof(Token) then
if Token = FToken then
begin
GetMem(Buffer,BUFFER_SIZE);
try
while WaitForData(1) do
begin
i:= Recv(FSocket, Buffer^, BUFFER_SIZE, 0);
if i > 0 then
begin
FFile.WriteBuffer(Buffer^,i);
inc(FReceived, i);
end else
break;
end;
finally
FreeMem(Buffer);
end;
end;
end;

function TFileReceiver.WaitForData(Count: Integer): Boolean;
var
i: Integer;
Buffer: PChar;
FDSet: TFDSet;
TimeVal: TTimeVal;
begin
Result:= FALSE;
GetMem(Buffer,Count);
try
while not Terminated do
begin
TimeVal.tv_sec:= 0;
TimeVal.tv_usec:= 10000;
FD_ZERO(FDSet);
FD_SET(FSocket, FDSet);
if Select(0, @FDSet, nil, nil, @TimeVal) > 0 then
begin
i:= Recv(FSocket, Buffer^, Count, MSG_PEEK);
if i > 0 then
begin
if i = Count then
begin
Result:= TRUE;
break;
end else
Sleep(10);
end else
break;
end;
end;
finally
FreeMem(Buffer);
end;
end;

{ TFileSender }

constructor TFileSender.Create(Filename, Host: String; Port: Integer;
Token: int64);
var
Address: u_long;
HostEnt: phostent;
Addr: sockaddr_in;
begin
FFile:= nil;
FSended:= 0;
FSocket:= INVALID_SOCKET;
FToken:= Token;
FFile:= TFileStream.Create(Filename,fmOpenRead or fmShareDenyWrite);
Address:= inet_addr(Pchar(Host));
if Address = INADDR_NONE then
begin
HostEnt:= gethostbyname(PChar(Host));
if HostEnt <> nil then
Address:= PInAddr(HostEnt.h_addr_list^)^.S_addr;
end;
if Address <> INADDR_NONE then
begin
FSocket:= Socket(AF_INET, SOCK_STREAM, 0);
if FSocket = INVALID_SOCKET then
raise EWinsockError.Create('Socket');
Addr.sin_family:= AF_INET;
Addr.sin_addr.S_addr:= Address;
Addr.sin_port:= htons(Port);
if Winsock.Connect(FSocket, Addr, Sizeof(Addr)) = SOCKET_ERROR then
raise EConnectError.Create('Connect');
end else
raise EConnectError.Create('Connect');
FreeOnTerminate:= TRUE;
inherited Create(TRUE);
end;

destructor TFileSender.Destroy;
begin
if FSocket <> INVALID_SOCKET then
CloseSocket(FSocket);
FFile.Free;
inherited;
end;

procedure TFileSender.Execute;
var
i,j: Integer;
Buffer: PChar;
begin
if Send(FSocket,FToken,Sizeof(FToken),0) = Sizeof(FToken) then
begin
GetMem(Buffer,BUFFER_SIZE);
try
i:= FFile.Read(Buffer^,BUFFER_SIZE);
while (i > 0) and not Terminated do
begin
j:= Send(FSocket,Buffer^,i,0);
if i > 0 then
begin
inc(FSended,j);
if j <> i then
FFile.Seek(j-i,soCurrent)
end else
break;
i:= FFile.Read(Buffer^,BUFFER_SIZE);
end;
finally
FreeMem(Buffer);
end;
end;
end;

var
WSAData: TWSAData;

procedure Startup;
begin
if WSAStartup(MAKEWORD(1, 1), WSAData) <> 0 then
raise EWinsockError.Create('WSAStartup');
end;

procedure Cleanup;
begin
if WSACleanup <> 0 then
raise EWinsockError.Create('WSACleanup');
end;

initialization
Startup;

finalization
Cleanup;

end.

Son dos clases descendientes de la clase TThread. Solo utilizo funciones del Winsock, nada de librerias.

Y un ejemplo de como usarla seria el siguiente:
- Uno de los usuarios del chat decide mandar un archivo a otro, así que le manda un mensaje pidiéndole permiso.
- El otro crea una instancia del TFileReceive y le devuelve un mensaje con el numero de puerto y un código de seguridad (token)
- Ahora el primero crea una instancia del TFileSender, usando el puerto y el token que acaba de recibir, y envía el archivo.

Esto llevado a código:

// Para crear el receptor
with TFileReceiver.Create('c:\borrame.exe',61985,789) do
begin
Resume;
end;

// Para crear el emisor
begin
with TFileSender.Create(ParamStr(0),'127.0.0.1',61985,789) do
begin
Resume;
end;
end;

El receptor y el emisor solo se tienen que poner de acuerdo en el puerto y el token, si el emisor y el receptor ya mantienen una conexión de chat no sera difícil implementar un protocolo para hacer eso.

Bueno, son las 3 AM y esto es todo lo que se me ocurre :p

Espero que se me entienda.

Julián
02-10-2007, 17:50:27
Jau!

tengo muy poco tiempo estos días, mas que poco ninguno,por eso no he podido poner esto antes:

icsChatComponents (http://ajedrezchat.com/downloads/?op=mydown&did=8&ext=/file.zip)

Ahí van los componentes para tener un servidor y cliete chat, con el código fuente y una demo.
Mi consejo es que, a quien le interese el tema, pruebe la demo antes que nada. Y despues que se ponga a mirar el código chapucerillo, jeje.

Para probar la demo no hay mas que ejecutarla, y activar el servidor, y despues si activa el cliente se conecta al server. Despues puede ejecutar otra instancia del programa y conectarse al mismo server ( Con otro Nick para que no de error, claro!!)

Gueno, ya me direis, un saludo!

Lo olvidava: para instalar los componentres se necesitan los ICS de Fpiette (http://www.overbyte.be/eng/products/ics.html).

dec
03-10-2007, 09:01:50
Hola,

Está muy bien Julián. La "demo" por lo menos funciona estupendamente. :)

Julián
03-10-2007, 13:32:20
Hola,

Está muy bien Julián. La "demo" por lo menos funciona estupendamente. :)

Jau!

Pues si, si miras el código encontraras unas cosas bastante retorcidas en los procesos de conexión y validación de clientes al servidor de chat, y sé que dicho código es en teoría, merecedor de un buen suspenso en un éxamen de programación en una universidad.

Perooooooo... el hecho cierto y comprobado es que funciona, cmo tu dices, bien. ¿y como me atrevo a afirmar eso?

Ahí vá: el desarrollo de ese código tuvo duras pruebas que superar. Era para el ajedrezchat, que se usaba, y se sigue usando, en los canales #delphi y #ajedrez del irc-hispano, y en esa epoca había 3 o 4 hijosdelagranputa que se dedicaban a sabotear y a putear a los usuarios de estos canales, y en concreto al ajedrezchat. De manera que yo sacaba una versión del programa, lo daba a probar, y automáticamente, ahí tenias a esos 4 cabrones conectandose por telnet y por ssh a cualquier ajedrezchat que se pusiera de server. Incluso se hacian programillas con un botón "Conectar un socket al ajedrezchat" el cual pulsaban rapida y repetidamente hasta que reventaban literalmente cualquier ajederzchat de servidor. Un infierno.

Pero yo soy muy cabezón. Y el resultado será un código muy remendao, pero, despues de perder alguna batalla, gané la guerra. Con un par.

No dudo que algún experto programador o hacrker o lo sea sea capaz, incluso fácilmente, de tumbarme un server de ajedrezchat. Pero aquellos cuatro hackercillos de pacotilla no pudieron, tuvieron que rendirse, humillados y derrotados, y agachar su vacía cabeza y retirarse avergonzados.

Así que, algún experto podrá criticar, con gran razón, mi código, y yo se lo agradeceré (aún mas le agradecería que lo arreglara). Pero el hecho, el hecho cierto, es que funcionar, funciona, y muy bien. Y eso es lo que yo pretendía.

Por cierto, que estuve probando con los INDY, antes que los ICS, pero toido lo que conseguía era tremendamente vulnerable a cualquier ataque, aunque fuera un pequeño 'flood'. Por eso tuve que volverme a los ICS.

Un saludo!

maeyanes
05-10-2007, 18:33:35
Hola!

Tengo un componente basado en el código de la UIApp (http://romansg.net/index.php?pg=uiapp) de Román, aprovecho para subirlo y lo usen en los componentes Club Delphi, claro siempre y cuando Román no ponga ningún pero al regresar... :)

No soy bueno poniendo comentarios y hay libertad absoluta para modificar los que ya vienen en el código fuente (sobre todo la noticia inicial :p)... :D

El zip contiene el código fuente y las imagenes para usar en la paleta de componentes...



Saludos...

natalinuyo
08-10-2007, 17:45:02
Hola:

Recién estoy tratando de instalar los componentes Rx, sin embargo me aparece el siguiente error ---> RLINK32: To many resources to handle.
El post dice:
No hace falta!!: no lo hagas!!!
Solamente donde en el paquete hace referencia al archivo de recursos como: "*.res" (o dfm), cambia el asterisco por el nombre del proyecto.


Me podrían indicar como se hace eso? o donde lo hago?, es que soy novata en esto de los componentes... :confused:

Gracias

dec
10-10-2007, 14:08:04
Hola,

Acabo de actualizar los componentes del ClubDelphi (http://componentes.clubdelphi.com/descarga.html) para añadir el "EditButton" que refiere Héctor Randolph en este hilo (http://www.clubdelphi.com/foros/showthread.php?t=48990).

He tratado de añadir el que propone el compañero maeyanes un par de mensajes más arriba, pero, no lo he visto muy claro. No digo el componente, que me parece estupendo, sino los cambios que tenía que hacer...

También para el componente de Héctor he tenido que hacer algún que otro cambio. Y es que tenéis que tener en cuenta una cosa, o varias, mejor dicho, las que se refieren en el archivo "Desarrollo.txt" que se puede encontrar junto a los componentes.

Está cojonudo que queráis ceder vuestros componentes, y muchos de ellos los he adaptado para que entren en el paquete CCD, pero, creo que si los adaptaráis vosotros sería mucho mejor. ¿A qué me refiero? Pues a lo que digo que pone el archivo "Desarrollo.txt" mencionado, y también a lo que vosotros mismo podáis ver.

Por ejemplo, los componentes del clubdelphi cuentan con sus propias excepciones, y pueden añadirse más; también cuentan con sus recursos/cadena, y también pueden añadirse los que necesite cada componente. Cada componente cuenta con una imagen que se encuentra en el archivo "CCD.dcr"; cada componente, en caso de usar recursos, habrá de preparar un archivo propio para ello, etc., etc., etc.

Y diréis, qué coño, pues hazlo tú. Yo te paso el componente y tú lo retocas y lo pones entre los otros. Y ya... eso he venido haciendo, pero, como he dicho, es que ha veces no resulta sencillo retocar un componente que no has escrito tú. No siempre es así, pero, a veces resulta complicado. En fin. Si tenéis algo que decir hacedlo ahora o callad para siempre. :)

Casimiro Notevi
10-10-2007, 17:02:31
Bueno, sólo quería comentar que me parece estupenda la idea de los componentes del club.
No he puesto ninguno de los mios, el motivo es bastante sencillo: no tengo componentes propios :eek:
Siempre he usado los que trae Delphi y cuando me ha hecho falta algo que no lo trae, entonces, siempre he buscado alguno ya hecho, con acceso al código fuente, para no llevarme sorpresas.
En fin, si acabo haciendo alguno lo compartiré aquí :)

Héctor Randolph
10-10-2007, 17:10:08
Hola Dec, pues tienes razón lo correcto es que cada quien se encargue de adaptar sus propios componentes de acuerdo con el estándar del archivo Desarrollo.txt, en todo caso para lo que si requerimos tu ayuda es para actualizar el paquete y subirlo a la página.

De hecho siempre lo he tenido en cuenta y de ninguna manera quiero abusar de tu amabilidad, lo que pasa es que te me has adelantado :D. Hace un rato estaba trabajando con el componente EditButton para enviarlo con los cambios necesarios para añadirlo al paquete y me encuentro con la sorpresa de que tu ya lo has hecho.

Por otra parte quiero informarte que estoy trabajando en la creación de la ayuda para los componentes, es algo que me parace importante para facilitar su uso. En cuanto tenga algo que pueda mostrar les aviso.

Saludos

maeyanes
12-10-2007, 01:08:12
Hola,

He tratado de añadir el que propone el compañero maeyanes un par de mensajes más arriba, pero, no lo he visto muy claro. No digo el componente, que me parece estupendo, sino los cambios que tenía que hacer...



Pues el único cambio era en los comentarios... :p

Deja reviso el archivo de texto mencionado y hago los cambios necesarios en el componente...


Saludos...

walito
18-10-2007, 04:37:38
Buenas, despues de hacer muchas preguntas en este foro y de que la gente me ayude ami y amuchos de nosotros, me gustaria tambien aportar algo pero no es un componente, es una clase que la uso para checkeos de campos para la carga de un formulario, entiendo que esta breve explicacion no ayuda de nada :D e intentado crear un truco pero no veo link alguno para eso, esta clase la tengo en un blog mio, no se si se puede poner mi link a la nota o que me digan como puedo publicar un truco y con gusto compartire mis ideas.

Saludos

dec
18-10-2007, 13:42:43
Hola,

walito, puedes enlazar a tu weblog, si quieres, o puedes añadir un truco (http://www.clubdelphi.com/trucos/insertar/index.php) desde el apartado de trucos (http://www.clubdelphi.com/trucos/). Como lo prefieras. :)

walito
18-10-2007, 14:10:18
Hola,

walito, puedes enlazar a tu weblog, si quieres, o puedes añadir un truco (http://www.clubdelphi.com/trucos/insertar/index.php) desde el apartado de trucos (http://www.clubdelphi.com/trucos/). Como lo prefieras. :)

Gracias por la respuesta, bueno dejo el link ACA (http://blog.phpgas.com.ar/2007/10/16/proyecto-checkeo-de-formularios-en-delphi-parte-2/) si lo prueban y no encuentran error lo subo a trucos.

Gracias

dec
18-10-2007, 14:28:15
Hola,

Bueno. Pues no lo he probado, porque ahora me es imposible, pero, echando un vistazo al código fuente parece una cosa curiosa la clase que has construído. Si quieres añadirla a los componentes del Clubdelphi, tal vez podrías hacerlo, podrías crear un componente (propiamente dicho) no visual.

Por el momento los componentes del ClubDelphi no cuentan sino con componentes, es decir, no hay unidades o clases que también pueden ser útiles en un momento dado. Pero, quién sabe... quizás en un futuro...

walito
18-10-2007, 14:47:26
Perfecto, dale en cuanto tenga un tiempito lo subo a trucos y dejame ver como lo puedo transformar en componente.

Saludos

ariefez
18-10-2007, 17:00:24
Me uno a la causa... me parece perfecto tener los componentes del club, aparte de ayudar a otros tambien beneficia a uno en cuanto a la mejora de un componente, adjunto tres lo unico malo es q los hice en Delphi 2007 no se si sera compatible con las anteriores... ¿existe la unidad GraphUtil en dichas versiones? (nunca me habia fijado en eso antes) bueno solo es por el procedimiento GradientFillCanvas.

Los componentes en cuestion son:

TMsBackGround:
da un fondo a un formulario (SDI & MDI) a partir de una bitmap tambien la opcion de una fondo de color solido o con gradiente

TMsGradient:
Nada de otro mundo es solo un gradiente de forma rectangular

TMsInfoView:
Desendiente de TMsGradient permite mostrar conjuntos de texto con una imagen al lado izquierdo

Otra cosa mas, si quiero mejorar alguno de los componentes como haria para notificar el cambio donde lo publico?? no deberia tener un sub-foro los componentes del club delphi, esto xq este hilo se inicio a modo de encuesta.

Por ejemplo para el componente TCCDEditInsideHelp hice unas pequeñas modificaciones:

En el procedimiento WM_Paint modifique unas cuantas lineas

procedure TCCDEditInsideHelp.WMPaint(var Message: TWMPaint);
var
MCanvas: TControlCanvas;
Margin: Byte;
begin
inherited;
if ((Text = '') and (Focused)) or (Text <> '') or not FInsideHelpActive then
Exit;
{ Inicializo el lienzo }
MCanvas := TControlCanvas.Create;
try
{ Margen - MEJORAR !!! }
Margin := 1;
if BorderStyle = bsNone then
Margin := 0
else
if not Ctl3D then
Margin := 2;
{ Asignar el canvas }
MCanvas.Control := Self;
MCanvas.Brush.Color := Color;
MCanvas.Font.Assign(Font);
MCanvas.Font.Color := FInsideHelpColor;
{ Dibujo el texto }
MCanvas.TextOut(Margin, Margin, FInsideHelpText);
finally
FreeAndNil(MCanvas);
end;
end;


para obtener los margenes hay alguna funcion???

basicamente lo q hice: al entrar en el componente se anula el texto informativo y su fuente es la misma a la del edit, aunque seria mejor crear una propiedad InsideHelpFont y xq no tambien InsideHelpFontAlign

no seria mejor usar Invalidate en vez de RePaint?

todo esto claro con el permiso del autor q despues de esto se convertiria en otra criatura :D

ariefez
31-10-2007, 20:27:09
Saludos a todos...

Reabro este hilo para actualizar el componente TMsBackGround correcion de algunos bugs adjunto la unidad solo tienen q reemplazar los archivos

pborges36
01-11-2007, 15:59:15
Holas a todos. Aunque no soy miembro premium me gustaria aportar con algo, aunque sea poco. Este es un componente que pude desarrollar con la ayuda de otros miembros. Obvio que hay mejoras para hacerle, pero esa es la idea no? Bueno aqui (http://www.clubdelphi.com/foros/showthread.php?t=37227&highlight=BRGFocusAdmin) esta para que le hechen un vistaso, hasta que pueda subir los archivos. Saludos.

Héctor Randolph
01-11-2007, 17:44:36
Hola pborges36!


Aunque no soy miembro premium me gustaria aportar con algo.


Antes que nada gracias por aportar tu componente a la comunidad, precisamente de eso se trata de compartir y aprender en conjunto.

Este hilo es público y los componentes también. Lo que se pretende es poner a disposición de todos este paquete de componentes para que los usen libremente en sus aplicaciones y para todo aquel que quiera aprender leyendo el código fuente.

Saludos

jrenzo
14-11-2007, 03:53:27
Hola a todos soy nuevo en todo esto, estoy aprendiendo a crear componentes es por esto que no he enviado ninguno todavia, espero en lo mas pronto posible aprender, para asi ayudarles a seguir haciendo crecer esta pagina:cool:

ldmar3
14-11-2007, 16:00:15
oye no se como instalar el componente en mi version delphi 5.0 mas bien no se como agregar un componente a mi programa delphi como se le hace ya que un componente es para poder realizar mas programas o dime que es un componente y como se utiliza por favor ya vez que soy casi nuevo en esto de delphi 5.0

pborges36
17-11-2007, 16:11:36
oye no se como instalar el componente en mi version delphi 5.0 mas bien no se como agregar un componente a mi programa delphi como se le hace ya que un componente es para poder realizar mas programas o dime que es un componente y como se utiliza por favor ya vez que soy casi nuevo en esto de delphi 5.0

Te recomendaria que comiences con los que trae delphi para aprender. A medida que vayas tomando confianza veras que tus necesidades superaran a estos y reicen incursaras en instalar, crear componentes.
Saludos.

Lepe
17-11-2007, 17:37:28
Recién acabo de ver este hilo, al parecer se cocinó durante mis eternas vacaciones. Lo único que veo es:

Versión 1.0 ... Y se cambió de nombre al pack y a todos sus componentes:
- EditP pasa a ser ccdEditPlus
- SpinBP pasa a ser ccdSpinMagico
(lamentamos estas incomodidades a los programadores que ya usen las versiones anteriores, se ha hecho por unificar el nombre y evitar las coincidencias con otros componentes de terceros).

Versión 2.0 ... Y se dividió los componentes entre:
- ccdVCL
- ccdCL
para diferenciar los componentes visuales de las clases y rutinas de propósito general (se ha cambiado el nombre al 80 % de las rutinas) de nuevo, lamentamos las molestias ocasionadas.

Versión 3.0 .... Debido a los más de 600 componentes que han sido ofrecidos, se ha rediseñado la ubicación en distintas pestañas de la paleta de delphi, ahora se encuentran más fácilmente los componentes.

¿alguien nota alguna similitud con otra biblioteca? no sé....

Saludos

Héctor Randolph
17-11-2007, 18:34:06
Hola Lepe, que bueno que pasas por acá!

Respecto a lo que comentas, no conozco esa bilbioteca, pero escuche algunos rumores acerca de ciertos JEDI que están copiando todo de los componentes del club :D

Saludos

Lepe
18-11-2007, 00:32:49
Pues más que nada lo decía por esa nueva noticia que Mozilla 3.0 se publicará sin corregir el 80 % de los fallos.

Ahora lo comprendo, pero desde luego, lo que me fastidió el cambio de jvcl 2.1 a la 3.0... eso, eso no me lo quita nadie del cuerpo :D :D

Saludos y arriba esos componentes.

Roll06lm
24-11-2007, 17:37:52
Estimados colegas:
Esta es una muy buena idea para nosotros los que comenzamos a hacer algun componente y para los que ya tienen años haciendo esto.
Vi tambien que en el FTP, hay secciones para cada cosa, Ejemplos, Componentes, etc... y me gustaría preguntar si no sería bueno añadir allí los componentes de uso mas frecuentes y no solo los que nosotros hagamos o mejoremos que ya de hecho es un fenomenal avance en esto de compartir conocimientos.

Un saludo
Roll06lm

megaredoxk
28-11-2007, 01:11:50
un saludo muy especial, Josè Luis; en verdad me siento muy orgulloso de pertenecer al Club Delphi, y apoyo tu idea.....en lo que te pueda colaborar estarè a disposiciòn para hacer que el club cresca mucho màs

José Luis Garcí
28-11-2007, 08:50:47
Gracias por tu apoyo megaredoxk, pero basicamente sólo aporte la idea, estoy un poco parado con el tema, esta son epocas de muchisimo trabajo para mí, de todas maneras debemos a gradecer al resto de los com`pañeros, por participar, especialmente a Emilio por permitir y alojar la idea y a Dec por su inestimable colaboración.

cHackAll
30-11-2007, 23:50:49
Acá dejo mi versión de SemiPanel espero les sea de utilidad, cualquier observación será agradecida.

Saluddd

lachuza
25-01-2008, 17:28:34
Voto para el SI

Ingeniero
02-03-2008, 22:46:22
La Idea es Muy Buena... y voto por ella...

AGAG4
24-10-2008, 17:34:25
A bueno... si es asi pues si:D

Adjunto y cedo la autoria de los componentes a clubdelphi. Repito, son de hace tiempo, y lo hice con fines de práctica. Tal vez el TKeyGen pueda ser ampliamente mejorado y útil... el TVolumen no se si tenga utilidad (al menos lo fue en una ocasión para mi).

Saludos,

Esta muy bien el ejemplo que señalas funciona excelente pero el problema que tiene es que si le pones manualmente en SILENCIO a Windows ó le bajas todo el volumen y quieres aumentarle el volumen con el componente no funciona, eso estaría chingon que se puediese aumentar el volumen sin importar de que estuviese en silencio ó volumen bajo....

Saludos....

Delphius
24-10-2008, 18:26:39
Esta muy bien el ejemplo que señalas funciona excelente pero el problema que tiene es que si le pones manualmente en SILENCIO a Windows ó le bajas todo el volumen y quieres aumentarle el volumen con el componente no funciona, eso estaría chingon que se puediese aumentar el volumen sin importar de que estuviese en silencio ó volumen bajo....

Saludos....
Hola AGA4,
Ese componente es de hace tiempo, y fue para mí más una práctica que algo profesional.
La verdad es que no recuerdo si realmente tiene ese bug. Si es que sucede eso, pues es eso.

Si buscas algo más profesional y debidamente testeado (yo lo fuí testeando, pero en ese entonces no hice demasiadas pruebas) lo mejor sería emplear algún componente de terceros. Visita Torry.net. O si deseas, puedes ampliarlo y modificarlo.

Si optas por esto último sería muy recomendable que nos lo comentes, y que lo aportaras a la comunidad de clubdelphi.

Saludos,