Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Hints o comentarios en una celda (https://www.clubdelphi.com/foros/showthread.php?t=44767)

felipe88 14-06-2007 02:02:06

Hints o comentarios en una celda
 
Estoy intentando hacer algo similar a lo que hacen las celdas de excell... por ejemplo, en la que se pueden crear comentarios en una celda especifica con solo pasar el mouse por encima... ALGO ASI

Lepe 14-06-2007 11:56:04

Hombre, pues me alegro mucho por tí :D :p :D

Te recomiendo encarecidamente que leas la Guía de estilo.

- En el foro SQL, me extraña un hilo así.
- No dices si es un DBGrid, StringGrid o qué vas a usar.
- No expones la duda, solo realizas una afirmación.


Saludos

felipe88 14-06-2007 14:43:18

...Pues si, no complete la pregunta y no es que tenga que ver con SQL... la verdad es un componente Dbgrid o un TMSGrid (www.tmssoftware.com)..:)

ContraVeneno 14-06-2007 15:27:08

Mucha suerte, nos cuentas como te fue ;)

felipe88 14-06-2007 22:27:41

En realidad aun no doy con la idea... Pero trabajo en buscar la solucion... pero si alguien ya lo ha intentado o conoce como hacerlo le estare muy agradecido si me ayuda, de antemano gracias por el interez en ayudar..

Lepe 15-06-2007 11:31:56

Hombre, la idea "parece simple".

Pones el Grid en modo DefaultDraw := false. Ya eres el responsable de pintar las celdas. En cada OnDrawCell, dibujas con líneas un triángulo en una de las esquinas (usa las funciones que trae su canvas).

Cada celda debería tener una propiedad "HasComment" de tipo boolean que indica si se debe pintar o no el comentario. Hay muchas formas de hacer esto:

- Si es un StringGrid, quizás puedas usar una propiedad Tag u otra que no se utilice
- un array [0..Maxcol, 0..MaxFilas] of boolean de forma que cada índice del array se corresponde con la misma celda del grid.

Ahora solo queda detectar cuando el usuario está sobre la celda y poner el mensaje en pantalla. Para eso hay los llamados BalloonHint (busca en torry) y situarlo en la celda que correspondiente (normalmente los grids tienen un método MouseToCell(X,Y, col, Fila)) que hacen la tarea más fácil y mostrarlo.

Saludos

felipe88 18-06-2007 18:45:56

Oye que buena respuesta... sin hembargo gracias al componente que estoy utilizando pude hacerlo de una manera mas facil y lo descubri hace poco por lo que no lo habia mencionado... de todas maneras les agradezco a todos la ayuda.

A proposito, yo usaba el componente TMSDBGrid, el cual tiene una propiedad llamada AddComment en la que solo dices la coordenada matricial y el comentario... asi lo solucione :D


La franja horaria es GMT +2. Ahora son las 20:30:15.

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