Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Saber el ancho de una columna cuando se modifica (https://www.clubdelphi.com/foros/showthread.php?t=91236)

lbidi 08-12-2016 15:40:18

Saber el ancho de una columna cuando se modifica
 
Estimados.

Estoy haciendo una prueba de tamaño de un dbgrid y por lo tanto , necesito saber el ancho de una columna al momento
de hacerle el resize. He probado poniendo en un edit que tengo por ahi su ancho
Código Delphi [-]
edt_ancho.Text := grid.Columns[grid.SelectedField.FieldNo].Width
pero de esta manera solo me trae el ancho de la columna 1 porque el foco esta en esa celda.

Quiero que me vaya cambiando ese edit por el ancho de la columna que estoy modificando su ancho.
Se entiende ?

Muchas gracias

jhonny 08-12-2016 16:01:10

Hola, 3 preguntas antes de responder algo...

1. ¿Siempre es la misma columna?
2. Si la respuesta a la primera pregunta es verdadera, ¿Cambia esta columna de posición?
3. ¿Estás usando VCL o FMX?

lbidi 08-12-2016 16:07:29

Gracias jhonny por responder.

1 - No, no siempre es la misma columna, por eso mi dificultad.
2 - ..
3 - VCL

Es un dbgrid con 6 columnas, y por ahora, necesito saber el ancho a medida que lo voy cambiando para ver como se ajustan las mismas dentro del panel en el cual esta el grid.

Luego tendre que hacer alguna formula para que se vayan modificando el ancho de las mismas segun la resolucion de la pantalla.

Gracias

jhonny 08-12-2016 16:17:56

La verdad no tengo muy claro lo que quieres lograr, sin embargo me suena a que quizá te sirva recorrer las columnas en el OnResize de la Grid y capturar ese valor que deseas... algo como:

Código Delphi [-]
   for i := 0 to Grid1.columns.count -1 do
   begin
      //Capturar el width y hacer lo que necesites...
   end;

lbidi 08-12-2016 16:32:02

Perfecto Jhonny, no lo habia pensado de esa manera, pero me resulta ideal para lo que necesito.

Muchas gracias.

Abrazo cordial.


La franja horaria es GMT +2. Ahora son las 23:24:35.

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