arkadaşlar yazdığımız bir programda yazıcıdan aldığımız çıktı sayısını saydırmamız gerekiyor.
İşlem şu: Formda sağ üst tarafta bir Label olacak ve yazıcıdan her çıktı alındığında bu Label'ın değerini 1 artıracağız. Çıktıya sayfa numarası verme yani.
Yardımcı olursanız sevinirim (:
Yazıcı çıktısını sayma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- fatihtolgaata
- Üye
- Mesajlar: 382
- Kayıt: 04 Mar 2004 09:46
- Konum: K.çekmece / İstanbul
- İletişim:
- fatihtolgaata
- Üye
- Mesajlar: 382
- Kayıt: 04 Mar 2004 09:46
- Konum: K.çekmece / İstanbul
- İletişim:
Sencer'in dediği şey senin istediğin cevaplardan birisi. Daha açık anlatmak gerekirse, bir çok yoldan birisi ve bence en basiti şu. Bir şekilde PrintDialog ile bilgileri aldın ve :
ile printer'ı harekete geçirebildin. EndDoc'a gelinceye kadar da bir döngü ile sayfa numarasını saydırman lazım:
vesselam.
Kod: Tümünü seç
Printer.Title := 'Sayfa Numarası denemesi';
Printer.Copies := 1;
Printer.BeginDoc;
Kod: Tümünü seç
SayfaNo := PrintDialog.FromPage; //Sayfa kaçtan başlıyor.
while Printer.Printing and (not Printer.Aborted) do
begin
//Burada bir kaç işlem ile sayfayı printer'ın canvasına atıyoruz.
//...
//Eğer thread kullanmamış isek, formda donma olmaması için:
Application.ProcessMessages;
// Sayfa Numarasını yazdıralım ;)
Printer.Canvas.TextOut(150, 25, 'S ' + IntToStr(SayfaNo));
// Sayfa Numarasını artıralım
Inc(SayfaNo);
// Eğer sayfa yenilenmiş ise printer'da yeni bir sayfa açıyoruz.
if (SayfaNo <= PrintDialog.ToPage) and (not Printer.Aborted) then
Printer.NewPage;
end;
// Yazdırma sonu
Printer.EndDoc;