Fórum Socorro sera que ninguem desse foro Pode Me Ajudar... #142371
02/03/2003
0
mas não estou conseguindo.. abaixo esta o codigo que uso.. para vizualizar os registros num RichEdit
O Codigo esta assim.. ele esta ficando assim
--------------------------------------------------------------------------------
Codigo....Nome..............................................Data -
000001... Deibe Junior Viana...01/01/2002----> esta desalinhado a -
--------------------------------------------------------------------------------
coluna..
como faço para ficar um debaixo do outro..
O Codigo que estou usando é esse...
quero que fica assim
--------------------------------------------------------------------------------
Codigo....Nome............................................Data -
000001... Deibe Junior Viana.........................01/01/2002> aqui esta certo
--------------------------------------------------------------------------------
var
Data : String ;
QuebraPagina,x,Codigo,Pagina : Integer ;
begin
QuebraPagina:=0;
Codigo:=0 ;
Data:=DateToStr(Date) ;
Pagina:=1 ;
Linhas.Lines.Add(´============================================================================´);
Linhas.Lines.Add(´Farmácia MedFarma - Relatóirio de Clientes Pagina :´+InttoStr(Pagina)) ;
Linhas.Lines.Add(´CODIGO NOME CLIENTE Data:´+Data) ;
Linhas.Lines.Add(´============================================================================´);
for x:=0 to Q.RecordCount -1 do
begin
QuebraPagina:=QuebraPagina+1 ;
if QuebraPagina=21 then
begin
Pagina:=Pagina+1 ;
Linhas.Lines.Add(´============================================================================´);
Linhas.Lines.Add(´´);
Linhas.Lines.Add(´============================================================================´);
Linhas.Lines.Add(´Farmácia MedFarma - Relatóirio de Clientes Pagina :´+InttoStr(Pagina)) ;
Linhas.Lines.Add(´CODIGO NOME CLIENTE Data:´+Data) ;
Linhas.Lines.Add(´============================================================================´);
Quebrapagina:=0 ;
end;
Codigo:=Codigo+1 ;
Linhas.Lines.Add(FormatFloat(´000000´,Q.FieldByName(´Codigo´).AsInteger)+´ ´+Q.FieldByName(´Nome´).AsString +´ ´+Q.FieldByName(´Data´).AsString);
Q.Next;
end ;
Linhas.Lines.Add(´´) ;
Linhas.Lines.Add(´´) ;
Linhas.Lines.Add(´Total Pagina(s) :´+IntToStr(Pagina)) ;
Linhas.Lines.Add(´Total Linha(s) :´+IntToStr(linhas.Lines.Count)) ;
Anonymous
Curtir tópico
+ 0Posts
02/03/2003
Cdaraujo
Veja o que vc tem que fazer para sair alinhado!
RichEdit1.Font.Name := ´Courier New´;
Atenciosamente,
Daniel Araújo
ICQ:111769805
www.cdinformatica.hpg.com.br
Gostei + 0
02/03/2003
Anonymous
amigo o me falou ja fiz e continua do mesmo geito acho que tem que criar uma variavel tipo intera para colocar em coluna não acha.. verefique o codigo fonte ... e vc pode me ajudar.....
tem que ficar assim.. Estou colocando os pontinhos.. para não desalinhar quando atualizar o registro na pagina... somente para isso
Codigo...Nome.....................................Data
000001..Deibe Junior Viana...................14/01/2002
Me ajude por favor só falta isso...
Gostei + 0
02/03/2003
Cdaraujo
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Contnrs, Spin, ExtCtrls;
type
TReSet = class
Cod, Nome, DataReg: String[50];
end;
TForm1 = class(TForm)
RichEdit1: TRichEdit;
Panel1: TPanel;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
SpinEdit1: TSpinEdit;
Label2: TLabel;
DateTimePicker1: TDateTimePicker;
Label3: TLabel;
ListBox1: TListBox;
Button2: TButton;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
LstValue: TObjectList;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function InsertChar(Sub, ConstValue: String; Size: Integer): String;
var I, CountStr:Integer;
begin
Result := ´´;
for I := 1 to Size do
begin
if Length(ConstValue) >= I then
Result := Result + ConstValue[I]
else
Result := Result + Sub;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
LstValue.Add(TReSet.Create);
with TReSet(LstValue[LstValue.Count -1]) do
begin
Cod := FormatFloat(´000000000´,SpinEdit1.Value);
Nome := Edit1.Text;
DataReg := FormatDateTime(´DD/MM/YYYY´,DateTimePicker1.DateTime);
ListBox1.Items.Add(InsertChar(´´ , Cod, 10) +
InsertChar(´ ´, Nome , 50) +
InsertChar(´´, DataReg, 10) );
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var Data:String;
I:Integer;
begin
Data := FormatDateTime(´DD/MM/YYYY´, Date);
RichEdit1.Lines.Clear ;
with RichEdit1 do
begin
Lines.Add(´============================================================================´);
Lines.Add(´Farmácia MedFarma - Relatóirio de Clientes Pagina :´+InttoStr(1)) ;
Lines.Add(´CODIGO NOME CLIENTE Data:´+Data) ;
Lines.Add(´============================================================================´);
for I:= 0 to LstValue.Count -1 do
begin
with TReSet(LstValue[I]) do
begin
Lines.Add(InsertChar(´´ , Cod, 10) +
InsertChar(´ ´, Nome , 57) +
InsertChar(´´, DataReg, 10) );
end;
end;
Lines.Add(´´) ;
Lines.Add(´´) ;
Lines.Add(´Total Pagina(s) :´+IntToStr(1)) ;
Lines.Add(´Total Linha(s) :´+IntToStr(Lines.Count)) ;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
LstValue := TObjectList.Create;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
LstValue.Free;
end;
end.
Gostei + 0
03/03/2003
Anonymous
As duas respostas se complementam:
1. Você não pode usar fontes proporcionais que causam o espaçamento variável. Portanto, use fontes monoespaçadas como: Courier, Corier New, Terminal, etc ;
2. Diferente do CA Clipper o Delphi elimina os espaços vazios a direita das colunas de tabelas do tipo caractere e conforme mostrado pelo colega, você deve utilizar uma função de preenchimento.
Gostei + 0
03/03/2003
Aroldo Zanela
As duas respostas se complementam:
1. Você não pode usar fontes proporcionais que causam o espaçamento variável. Portanto, use fontes monoespaçadas como: Courier, Corier New, Terminal, etc ;
2. Diferente do CA Clipper o Delphi elimina os espaços vazios a direita das colunas de tabelas do tipo caractere e conforme mostrado pelo colega, você deve utilizar uma função de preenchimento.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)