1

我想在 Dynamics Nav 2013 中的项目列表上放大图像。到目前为止,我可以做的是获取图像并将其显示在列表中。

在此处输入图像描述

为此,我在 OnAfterGetRecord 上调用 SearchImage 函数:

OnAfterGetRecord()
SearchImage;

搜索图像功能:

// C/AL Code
SearchImage()
//MESSAGE('1');

IF xRec."No."<>"No." THEN BEGIN
//MESSAGE('1');
  CLEAR(TmpImg_gInit);
  TmpImg_gInit.INIT;
  //CurrPage.PictBox2.PAGE.SetRec(TmpImg_gInit);
  //CurrPage.PictBox3.PAGE.SetRec(TmpImg_gInit);

  i := 1;
  //MESSAGE(FORMAT(TIME));
  TmpImg_gInit.INIT;
  TmpImg_gInit.RESET;
  TmpImg_gInit.SETCURRENTKEY("Table ID","Document Type","No.","Line No.","Version No.","Picture No.");
  TmpImg_gInit.SETRANGE("Table ID",27);
  TmpImg_gInit.SETRANGE("Document Type",0);
  TmpImg_gInit.SETRANGE("No.","No.");
  //TmpImg_g.SETAUTOCALCFIELDS(Picture);
  IF TmpImg_gInit.FINDFIRST THEN BEGIN
    TmpImg_gInit.CALCFIELDS(Picture);
  END;

  //MESSAGE(FORMAT(TIME));

  REPEAT
    TmpImg_gInit.CALCFIELDS(Picture);

    i:= i+1;
    xRec."No.":="No.";
  UNTIL TmpImg_gInit.NEXT = 0;
//  CUDiv.SendKey('{F5}');
END;

然后在我的列表中,我可以添加一个指向的新字段,TmpImg_gInit.Picture这将显示项目的图像。

问题是显示的图像很小(而源图像很大)。图像会自动调整大小以适合列表高度。

我想知道如何将这个图像显示得更大。有没有办法轻松做到这一点(无需加载项)?如果没有,你能给我指示如何做到这一点吗?

4

1 回答 1

2

您可以使用 FactBox,它将在屏幕右侧显示更大的图像。

但是,它只会显示您选择的项目的图片。对于产品图片之类的东西,这是最佳选择。例如,加载大量高分辨率产品图像会给用户 PC 带来压力。

页面内嵌时的图像大小无法更改,并且更适合状态图标之类的内容,例如交通信号灯。

自定义控件加载项

NAV 确实支持通过Control Add-ins修改页面 UI 。您需要创建一个作为图像的测试项目/控件,并查看它是否允许您将高度扩展到设置的行高之上。

您可以在 MSDN 上获取有关控制加载项大小的更多信息。

于 2015-03-03T22:58:19.597 回答