Also ich hab mir in diesem Forum alles durchgelesen was es über dieses Problem zu lesen gibt.
Trotzdem funzt bei mir das Drucken nicht.
Vieleicht könnt Ihr mir Helfen??
Also ich habe ein Quickreport erstellt das ein Formular welches ein Vordruck ist ausdrucken soll
Nun hab ich in der Reporteinstellung eine Benutzerdefinierte Größe eingegeben.
dann habe ich in der Form in der mein Druckbutton ist dieses Eingegeben
<code>
Procedure Papier(a4: boolean;hoehe,breite: integer);
var aDevice: array[0..255] of char;
aDriver: array[0..255] of char;
aPort: array[0..255] of char;
hDmode: thandle;
pDmode: pdevmode;
begin
printer.printerindex:=-1;
printer.getPrinter(aDevice,aDriver,aPort,hDmode);
if hDmode<>0 then
begin
pDmode:=GlobalLock(hDmode);
if pDmode<>nil then
begin
if a4=true then
begin
pdMode^.dmFields:=pDmode^.dmFields or dm_papersize;
pdMode^.dmPapersize:=dmpaper_a4;
end else
begin
pdMode^.dmFields:=pDmode^.dmFields or dm_papersize;
pdMode^.dmPapersize:=0;
pdMode^.dmFields:=pDmode^.dmFields or dm_paperlength;
pdMode^.dmPaperLength:=hoehe;
pdMode^.dmFields:=pDmode^.dmFields or dm_paperwidth;
pdMode^.dmPaperwidth:=breite;
end;
GlobalUnlock(hDMode);
end;
end;
end;
</code>
Aber irgendwie greift der Drucker immer wieder auf A4 zurück.
Bitte helft mir sonst verzweifle ich noch.
MfG Alex
Trotzdem funzt bei mir das Drucken nicht.
Vieleicht könnt Ihr mir Helfen??
Also ich habe ein Quickreport erstellt das ein Formular welches ein Vordruck ist ausdrucken soll
Nun hab ich in der Reporteinstellung eine Benutzerdefinierte Größe eingegeben.
dann habe ich in der Form in der mein Druckbutton ist dieses Eingegeben
<code>
Procedure Papier(a4: boolean;hoehe,breite: integer);
var aDevice: array[0..255] of char;
aDriver: array[0..255] of char;
aPort: array[0..255] of char;
hDmode: thandle;
pDmode: pdevmode;
begin
printer.printerindex:=-1;
printer.getPrinter(aDevice,aDriver,aPort,hDmode);
if hDmode<>0 then
begin
pDmode:=GlobalLock(hDmode);
if pDmode<>nil then
begin
if a4=true then
begin
pdMode^.dmFields:=pDmode^.dmFields or dm_papersize;
pdMode^.dmPapersize:=dmpaper_a4;
end else
begin
pdMode^.dmFields:=pDmode^.dmFields or dm_papersize;
pdMode^.dmPapersize:=0;
pdMode^.dmFields:=pDmode^.dmFields or dm_paperlength;
pdMode^.dmPaperLength:=hoehe;
pdMode^.dmFields:=pDmode^.dmFields or dm_paperwidth;
pdMode^.dmPaperwidth:=breite;
end;
GlobalUnlock(hDMode);
end;
end;
end;
</code>
Aber irgendwie greift der Drucker immer wieder auf A4 zurück.
Bitte helft mir sonst verzweifle ich noch.
MfG Alex
Comment