Procedure TFrmprint.prisetup(Var Msg : TMessage);
VAR BOOL_1:BOOLEAN;
devmode1:pdevmode;
begin
// exit;
//showmessage(inttostr(mrsource.dataset.recno));
if panel4.visible=true then
begin
exit;
end;
//1.22
hdevmode1:=copydata(hdevmode);
hdevnames1:=copydata(hdevnames);
setprinter(hdevmode1,hdevnames1);
//1.22
if frmprint<>nil then
if frmprint.pri1.execute then
begin
//1.22
GetPrinter(DevHandle, hDevNames);
hdevmode:=copydata(devhandle);
//1.22
BOOL_1:=TRUE ;//pri1.execute;
IF BOOL_1 THEN
BEGIN
frmprint.report.Page.Orientation:=printer.Orientation;
{
if frmprint.report.Page.Orientation=poPortrait then
begin
if (printer.pagewidth>100)and(printer.pagewidth<170) then
frmprint.report.Page.papersize:=A5
else
begin
if (printer.pagewidth>250) then
frmprint.report.Page.papersize:=A3
else
frmprint.report.Page.papersize:=A4;
end; //a5
end //height
else //横向
begin
if (printer.pageheight>100)and(printer.pageheight<170) then
frmprint.report.Page.papersize:=A5
else
begin
if (printer.pageheight>250) then
frmprint.report.Page.papersize:=A3
else
frmprint.report.Page.papersize:=A4;
if devmode1^.dmpapersize=dmpaper_a3 then
frmprint.report.Page.papersize:=A3;
if devmode1^.dmpapersize=dmpaper_a4 then
frmprint.report.Page.papersize:=A4;
if devmode1^.dmpapersize=dmpaper_a5 then
frmprint.report.Page.papersize:=A5;
if devmode1^.dmpapersize=DMPAPER_LETTER then
frmprint.report.Page.papersize:=LETTER;
if devmode1^.dmpapersize=DMPAPER_LETTERSMALL then
frmprint.report.Page.papersize:=LETTERSMALL;
if pricount>1 then
prinumber:=0
else
prinumber:=1;