我有TTaskDialog一个OnButtonClicked事件处理程序,其中执行了一个漫长的过程(几秒钟)。这很好用,但我想向用户表明事情正在发生,而这个漫长的过程正在进行中。我想在最初隐藏的对话框上有一个选框进度条,CommandLink单击它时出现,并在执行冗长的过程时运行 - 我会选择一个可见但在对话框时未启用的进度条是显示并在OnButtonClicked事件中“打开” 。仅包含该tfShowMarqueeProgressBar标志会导致该栏在对话框首次显示时出现并滚动,并且对话框的ProgressBar属性没有Enabled或Visible类型属性来控制此行为。
Windows 本身有 TaskDialogs 可以做我想做的事,所以我知道这在理论上是可能的,尽管我意识到围绕本机控件的 VCL 包装器的结构可能会使使用 VCL 对象变得困难或不可能。
TTaskDialog使用VCL 对象可以实现我想要的吗?