是什么导致这幅奇怪的画作“腐败”?

时间:2013-04-09 00:29:16

标签: delphi

我们的应用程序主要是单屏幕应用程序。当进入某个模式时,我们隐藏TRibbon并将其替换为TPanel,其上有一些TSpeedButton组件。 (见下文)。忽略任何不均匀,按钮标题等。

OK

在我回到正常模式然后回到此特殊模式后,某些内容已损坏。有什么建议吗?奇怪的是,如果我将鼠标移到按钮上,图像的外观会发生变化。

bad

1 个答案:

答案 0 :(得分:0)

谢谢大家。找到了解决问题的方法。

它是一般用途的软件,所以如果低质量的视频驱动程序容易受到这个问题的影响,我们需要改变它们。

它不在虚拟机上;这是一台Win7电脑。很高兴知道VMWare问题,因为我确实使用VMWare。

重绘它并没有帮助,但@David Heffernan的评论给了我一个让我得到答案的想法。我的想法是将面板绘制成位图&在整个过程中将该位图写入文件。

  procedure WriteToolbarBitmapFile(sText:string);
  var
    bmp:TBitmap;
  begin
    bmp:=TBitmap.Create;
    try
      bmp.Width:=pnlIMToolbar.Width;
      bmp.Height:=pnlIMToolbar.Height;
      pnlIMToolbar.PaintTo(bmp.Canvas, 0, 0);
      bmp.SaveToFile('c:\tmp\' + FormatDateTime('hh-nn-ss', Now) + ', ' + sText + '.bmp');
    finally
      bmp.Free;
    end;
  end;
直接显而易见,当我试图设置具有问题的面板的位置(pnlIMToolbar)以确保其位置在另一个控件之上时,问题就出现了。改变它,以便设置另一个控制位置。