Olha Davi, eu recebi o c�digo, por�m, eu nunca usei esse formato, algu�m
teria um modelo para me mandar, pelo menos pra eu saber onde coloco os
select, como eu adiciono as parcelas da minha fatura....
--- Em [EMAIL PROTECTED], "Junior" <[EMAIL PROTECTED]> escreveu
> Pessoal, estou insistindo nesse assunto porque estou realmente
precisando, se algu�m tiver um modelo, ou puder me explicar como
fa�o
para manter as partes das parcelas fixas eu agrade�o, tenho imensa
urgencia em resolver esse problema.... desde j� agrade�o a
aten��o de
todos...
>
> Junior
>
> [As partes desta mensagem que n�o continham texto foram
removidas]
Usa este componente que resolve o seu problema:
Unit NotaFiscal;
{
=====================================
EXEMPLO DE USO:
Var
Prin:TPrin;
Begin
Prin:=TPrin.Create(Application);
With Prin Do
Begin
Initialize;
TextOutLC(10,10,'HELLO WORLD');
TextOutLC(15,30,'TESTE DE IMPRESSAO');
Finalize;
End;
Prin.Free;
End;
=======================================
}
Interface
Uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
Forms, Dialogs,IniFiles;//,SevFun;
Const
FormFeed = #12;
_PR_ON = True;
_PR_OFF = False;
Type
TPrin = Class(TComponent)
Private
FCol,
FRow:LongInt;
Bitmap: TBitmap;
Ini:TIniFile;
Protected
Constructor Create(AOwner: TComponent);Override;
Destructor Destroy;Override;
Public
Procedure TextOutCL(nCol,nRow:LongInt;Text:String);
Procedure TextOutLC(nRow,nCol:LongInt;Text:String);
Procedure Initialize;
Procedure Finalize;
Function PRow:LongInt;
Function PCol:LongInt;
Procedure NewPage;
Procedure Eject;
Procedure Reset;
Procedure Sextos;
Procedure Oitavos;
Procedure SeteTetentaEDoisAvos;
Procedure CPI_10;
Procedure CPI_12;
Procedure Condensa(bCondensa:Boolean);
Procedure Beep;
Procedure ComprimentoDeNota;
Procedure ComprimentoDeDoc;
Procedure AlimentaLinha;
Procedure ComprimentoPorLinha;
Procedure ComprimentoPorPolegada;
End;
Implementation
Var
Lst:Text;
Constructor TPrin.Create(AOwner: TComponent);
Begin
Inherited Create(AOwner);
Bitmap := TBitmap.Create;
Bitmap.Handle := LoadBitmap(HInstance, 'TPrin');
End;
Destructor TPrin.Destroy;
Begin
Bitmap.Free;
Inherited Destroy;
End;
Procedure TPrin.NewPage;
Begin
Write(Lst,FormFeed);
FRow:=1;
FCol:=1;
End;
Procedure TPrin.Eject;
Begin
NewPage;
End;
Procedure TPrin.Finalize;
Begin
CloseFile(Lst);
End;
Function TPrin.PRow:LongInt;
Begin
Result:=FRow;
End;
Function TPrin.PCol:LongInt;
Begin
Result:=FCol;
End;
Procedure TPrin.Initialize;
Begin
FRow:=1;
FCol:=1;
AssignFile(Lst,'LPT1');
Rewrite(Lst);
{InLine($8B/$1E/Lst/$B8/$00/$44/$CD/$21/$80/$CA/$20/$B6/$00/$B8/$01/
$44/$CD/$21);}
End;
Procedure TPrin.TextOutCL(nCol,nRow:LongInt;Text:String);
Var xRow,xCol:LongInt;
Begin
{Teste de pr�xima p�gina}
If nRow=FRow Then
Begin
For xCol:=1 To nCol-FCol Do
Begin
Write(Lst,' ');
Inc(FCol);
End
End
Else
Begin
FCol:=1;
For xRow:=1 To nRow-FRow Do
Begin
WriteLn(Lst,' ');
Inc(FRow);
End;
For xCol:=1 To nCol Do
Begin
If xCol>FCol Then
Begin
Write(Lst,' ');
Inc(FCol);
End;
End
End;
Inc(FCol,Length(Text));
Write(Lst,Text);
End;
Procedure TPrin.TextOutLC(nRow,nCol:LongInt;Text:String);
Var xRow,xCol:LongInt;
Begin
{Teste de pr�xima p�gina}
If nRow=FRow Then
Begin
For xCol:=1 To nCol-FCol Do
Begin
Write(Lst,' ');
Inc(FCol);
End
End
Else
Begin
FCol:=1;
For xRow:=1 To nRow-FRow Do
Begin
WriteLn(Lst,' ');
Inc(FRow);
End;
For xCol:=1 To nCol Do
Begin
If xCol>FCol Then
Begin
Write(Lst,' ');
Inc(FCol);
End;
End
End;
Inc(FCol,Length(Text));
Write(Lst,Text);
End;
Procedure TPrin.Condensa(bCondensa:Boolean);
Begin
If bCondensa Then
Write(Lst,#15)
Else
Write(Lst,#18);
End;
Procedure TPrin.Reset;
Begin
Write(Lst,#27+'@');
End;
Procedure TPrin.Sextos;
Begin
Write(Lst,#27+'2');
End;
Procedure TPrin.Oitavos;
Begin
Write(Lst,#27+'0');
End;
Procedure TPrin.SeteTetentaEDoisAvos;
Begin
Write(Lst,#27+'1');
End;
Procedure TPrin.CPI_10;
Begin
Write(Lst,#27+'P');
End;
Procedure TPrin.CPI_12;
Begin
Write(Lst,#27+'M');
End;
Procedure TPrin.Beep;
Begin
Write(Lst,#7);
End;
Procedure TPrin.ComprimentoPorLinha;
Begin
Write(Lst,#27+'C');
End;
Procedure TPrin.ComprimentoPorPolegada;
Begin
Write(Lst,#27+'C'+'0');
End;
Procedure TPrin.ComprimentoDeNota;
Begin
Write(Lst,#27+'2'); //sextos
// Write(Lst,#27+'C'); // comprimento por linha
Write(Lst,#27+'C'+' '); // comprimento por polegada
Write(Lst,#27+'P'); //10 cpi
{
// Write(Lst,#27+#50);
Write(Lst,#27+#67+'1');
// Write(Lst,#18+#27+#77);
}
// Write(Lst,#27+#48);
// Write(Lst,#27+#67+' ');
// Write(Lst,#27+#64+#27+#79+#27+#67+#48);
//chr(27)+chr(64)+chr(27)+chr(79)+chr(27)+chr(67)+chr(48)
End;
Procedure TPrin.ComprimentoDeDoc;
Begin
Write(Lst,#27+#48); //sextos
// Write(Lst,#27+#67); //comprimento por linha
Write(Lst,#27+#67+' '); //comprimento por polegada
Write(Lst,#27+#77); // seleciona 12 cpi
// Este chegou mais perto!!!
{
Write(Lst,#27+#48); //oitavos
// Write(Lst,#27+#67); //comprimento por linha
Write(Lst,#27+#67+' '); //comprimento por polegada
Write(Lst,#27+#77); // seleciona 12 cpi
}
End;
Procedure TPrin.AlimentaLinha;
Begin
Write(Lst,#27+#10);
End;
End.
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages
Para falar com o moderador, envie um e-mail para:
[EMAIL PROTECTED] ou [EMAIL PROTECTED]
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que voc� faz do Yahoo! Grupos est� sujeito aos:
http://br.yahoo.com/info/utos.html