请熟悉F1BOOK的FW看看, 我想获取F1BOOK中的不同的工作表的打印纸张大小(100分)

  • 主题发起人 主题发起人 唐太宗
  • 开始时间 开始时间

唐太宗

Unregistered / Unconfirmed
GUEST, unregistred user!
想获取F1BOOK中的不同的工作表的打印纸张大小, 在帮助中查找了半天,
捍到PrintDevMode 属性,
var
DevMode : PDeviceMode;
begin
DevMode := GlobalLock(F1Book1.PrintDevMode);
DevMode^.dmPaperSize
DevMode^.dmPaperLength
DevMode^.dmPaperWidth
end;

但是我用上面的代码得到的dmpaperlength, paperwidth 都不对呀,
请指点一二.
 
F1book不是你那样设置的,用Delphi的代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
MyPageSet:F1PageSetup;
begin
MyPageSet :=F1Book61.CreateNewPageSetup ;
MyPageset.PaperSize:=F1PaperA4;//设置为A4纸
MyPageSet.LeftMargin:= 1;
//设置左边距
MyPageSet.PagesWide :=190;
end;

 
to 小刚:
我要是获取一个F1BOOK.READ读入一个文件以后,它已经设置好的纸张大小.
不是设定他的.
 
刚才的代码有点问题,下面的一定满足你了:
procedure TForm1.Button1Click(Sender: TObject);
var
MyPageSet:F1PageSetup;
PageWidth:Double;
begin
MyPageSet :=F1Book61.CreateNewPageSetup ;
{MyPageset.PaperSize:=F1PaperA4;//设置为A4纸
MyPageSet.LeftMargin:= 1;
//设置左边距
MyPageSet.PagesWide :=190;
}
F1book61.SetPageSetup(MyPageSEt);
if MyPageset.PaperSize=F1PaperA4 then
PageWidth:=210-(MyPageset.LeftMargin+MyPageSet.RightMargin );
showmessage(Floattostr(PageWidth));
end;
 
小刚兄:
麻烦一下,为什么我这句mypageset返回值为NIL呢, 我的F1BOOK安装是正常的呀,
MyPageSet :=F1Book61.CreateNewPageSetup ;
 
我看你的代码不是delphi的,在c++里可能不是这么用吧,我对在C++里怎么用也不熟。
 
小刚兄我是DELPHI6的呀
我的代码就是这样的,麻烦你看看,
你的代码测试通过了的是吗..
 
TO 小刚兄:
我也查了DFW其它的贴子, 都是这样的写法, 我重新在D7中生成F1BOOK的PAS文件,
再在D6中安装一遍就可以了, 没有出现问题了,
//谢谢你的指点.
 
后退
顶部