é possível configurar o texto da tabela antes de ser exibido no dbtext ?

25/01/2013

2

Eu já pesquisei, não encontrei nada que tira-se essa minha duvida...
estou procurando saber, como fazer com que um texto curto de 300 caractere armazenado em uma tabela fique configuradinho (3 linhas e 100 caractere cada linha) quando o usuário entrar no formulário deste texto?
agradeço desde já.
Responder

Posts

25/01/2013

Marco Salles

ongettext do tfield
Responder

25/01/2013

John Vitor

Poderia me passar um exemplo?
Responder

08/02/2013

Thiago

Você quer somente reduzir a quantidade de caracteres do texto, é isso?
Responder

10/02/2013

Marco Salles

Você quer somente reduzir a quantidade de caracteres do texto, é isso?


Parece que não.. Ele quer formatar um texto de 300 caracteres em 3 linhas cada uma contendo 100 caracteres

Sugeri o evento ongetText do fieds pq neste evento podemos formatar as informações vinda do BD
Responder

10/02/2013

Marco Salles

Você quer somente reduzir a quantidade de caracteres do texto, é isso?


Parece que não.. Ele quer formatar um texto de 300 caracteres em 3 linhas cada uma contendo 100 caracteres

Sugeri o evento ongetText do fieds pq neste evento podemos formatar as informações vinda do BD


Exemplo pronto especifico a esta solicitação eu não tenho amigo . Se tivesse passaria a vc .

[]sds
Responder

10/02/2013

Thiago

Bom como o amigo disse você terá que usar o Evento onGetText do TField

Se o objetivo é retornar 3 linhas de 100 de um texto de 300 caracteres, eu fiz o seguinte exemplo:

procedure TForm1.CdsTempTEXTOGetText(Sender: TField; var Text: string;
DisplayText: Boolean);
begin
if (length(Sender.AsString) = 300) then //Verifica se o tamanho do texto é 300
Text:=Copy(Sender.AsString,1,100)+#13+Copy(Sender.AsString,100,200)+#13+Copy(Sender.AsString,200,300)

/* Se for igual a 300, Você usa a função copy para pegar os 100 caracteres e concatena com #13 que equivale ao Enter em ASCII*/
else
Text:=Text;
end;


A partir daí você pode exibir o conteúdo num memo e ve o resultado. Espero que tenha ajudado.
Responder

10/02/2013

Marco Salles

então tiago , mas tem um problema tecnico nisso . Provavelmente o Memo não comporta 100 caracteres em um ùnica Linha Visual
dele . O fato que o memo não comportar isto ele pode dar a entender (depedendo da largura do mesmo ) que existem várias linhas ... Outro problema tecnico é que a quantidade de linhas do Memo (SeuMemo.Lines.Count ) tem mais a ver com o Visual
do que provalvelmente com o sLineBreak de fato contido no Texto
Responder

10/02/2013

Thiago

Verdade, eu nem tinha pensado nisso...

Mas então ele poderia exportar o conteúdo dessa tabela para XML e visualizar no Browser.
Responder

10/02/2013

Marco Salles

Pois é THIAGO LUIZ mas o cara sumiu....
Responder