我们的应用程序主要是单屏幕应用程序。当进入某个模式时,我们隐藏TRibbon并将其替换为TPanel,其上有一些TSpeedButton组件。 (见下文)。忽略任何不均匀,按钮标题等。
在我回到正常模式然后回到此特殊模式后,某些内容已损坏。有什么建议吗?奇怪的是,如果我将鼠标移到按钮上,图像的外观会发生变化。
答案 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)以确保其位置在另一个控件之上时,问题就出现了。改变它,以便设置另一个控制位置。