![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Puedes "recorrerlo" y contar los caracteres 13 (intro) que tiene
Código:
var iX, iLineas :integer; var cT :string; begin iLineas:=0; cT := qrTEXT.asString; for iX:=1 to length(cT) do if cT[iX]=#13 then inc(iLineas); // en iLineas tienes el número de líneas end;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#2
|
|||
|
|||
|
No funciona!!!
No necesariamente se pasa de línea con un Enter, es algo que hace el QRDBText al setearle yo el AutoStretch y el WordWrap, el largo se lo pongo yo, y si los datos que saca de la base son más largos de lo que yo le puse, entonces continúa abajo, es algo automático. Yanina Genia |
|
#3
|
||||
|
||||
|
Seria = a la cantidad de caracteres que fueron impresos en ese QRDBText divididos la cantidad de caracteres que caben en una sola linea, Por ejemplo:
Esta es la capacidad maxima de una linea <- Hasta aqui hay 41 caracteres Esta es la segunda linea <- Hata aqui hay 65 caracteres Entonces la cantidad de lineas seria 65/41 que es igual a 1.4878048780487804878048780487805 Alli puedes deducir ya que hay 2 lineas y con la funcion Ceil arreglartelas para acomodar la cosa ![]()
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#4
|
||||
|
||||
|
Cita:
![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#5
|
||||
|
||||
|
Para ampliar un poco, la funcion puede ser algo asi:
espero te sirva. ![]()
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!" http://www.purodelphi.com/ http://www.nosolodelphi.com/ |
|
#6
|
|||
|
|||
|
Tengo que declarar algo antes para usar esta funcion? Porque se enojó Delphi, dice que no lo declaré en ningún lado y que por eso ahora no lo va a usar.
A mi se me ocurrió algo así, pero lo hice sin función y estaba buscando algo para que quede más prolijo, hice: DetalleReporte.Height := DetalleReporte.Height + 17*((length(trim(query3.FieldByName('PAQ_SOLICITADO').AsString))div 80)+1); Se supone que aumenta el ancho del detalle a medida que se incrementan las líneas. Y me funciona bastante bien, pero buscaba eso, algo más estético. Hice 17 porque es el ancho de una línea, y le sumo 1 porque si tengo por ejemplo 150 caracteres, el div me va a dar 1. Y si los caracteres son 70, el div da cero, así que le suma 1 y queda bien. Yanina Genia |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|