我的Swing程序中有一个JTabbedPane
。用户点击选项卡后,程序需要一段时间来获取数据并处理结果,然后在选定的选项卡中显示结果。
如何显示一个沙漏或类似效果,让用户知道正在处理数据?在任务完成之前不要再次点击选项卡。
我的Swing程序中有一个JTabbedPane
。用户点击选项卡后,程序需要一段时间来获取数据并处理结果,然后在选定的选项卡中显示结果。
如何显示一个沙漏或类似效果,让用户知道正在处理数据?在任务完成之前不要再次点击选项卡。
一个JProgressBar(可能处于不确定模式)听起来不错 - 在数据被获取之前将其放在选项卡上。设计良好的用户界面不应强制用户等待长时间运行的任务完成,而是允许他们在其中做其他事情。
setCursor(int)已被弃用。这个方法可能更加简洁:
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
正如其他答案所提到的,您可以设置等待光标,但您还提到了防止额外的鼠标点击。您可以使用玻璃窗格来防止在长时间操作完成之前单击组件。除了关于玻璃窗格的Sun教程之外,http://www.java2s.com/Code/Java/Swing-JFC/DemonstrateuseofGlassPane.htm上还有一个不错的示例。
我会像其他人提到的那样