使用Firemonkey,如何向用户提供反馈? (crHourglass)

时间:2011-09-15 07:22:03

标签: delphi feedback delphi-xe2 firemonkey

通常,当我有一个需要一些时间的任务时,我会使用这样的脚本:

procedure Work;
var
  cPrevious: TCursor;
begin
  cPrevious     := Screen.Cursor;
  Screen.Cursor := crHourGlass;

  try    
  // the task

  finally    
    Screen.Cursor := cPrevious;
  end;
end;

使用FireMonkey, Screen 没有属性: Cursor

向用户提供反馈的最佳方式是什么?



我按照评论和答案...使用 TPanel (不透明度较低)和 TAniIndicator (我还模糊了其他组件):

Feedback

谢谢!

3 个答案:

答案 0 :(得分:1)

就像@mjn指出的那样,玻璃时光标不再是你可以利用的唯一等待模式。

例如,在Silverlight / WPF中,您可以使用繁忙的指示器控件, http://www.codeproject.com/KB/silverlight/SilverlightBusyIndicator.aspx

所以你可以尝试在FireMonkey中做类似的事情。您可能已经使用了类似的控件,或者您可以编写自己的控件。

答案 1 :(得分:1)

FireMonkey TScreen没有Cursor属性,但全局Platform实例有一个SetCursor方法:

用途   FMX.Platform,System.UITypes;

...   Platform.SetCursor(nil,crHourGlass);   尝试    ...   最后     Platform.SetCursor(nil,crDefault);   端;

答案 2 :(得分:1)

这适用于XE3,在XP上运行的FireMonkey2:

`Application.MainForm.Cursor:= crHourGlass;`