gpt4 book ai didi

Java Swing - UI block

转载 作者:行者123 更新时间:2023-12-02 00:22:54 24 4
gpt4 key购买 nike

我有一个 GUI,在单击事件时,我调用数据库查询来生成多个图表。在所有图表完成之前我看不到任何图表,这意味着 GUI 组件存在一些问题,在第一个图表完成并显示其内容之前,该组件会移动到下一个图表。可能的原因是什么以及如何避免此类问题?

最佳答案

组件没有问题。你的设计有问题。您正在事件调度线程中运行的单个方法中执行长时间运行的查询和图表更新。通过这样做,EDT 被完全阻止,并且在运行所有查询并生成所有图表之前无法重新绘制任何内容。

每次完成一个查询时,在 EDT 中使用后台线程执行查询并生成图表。 SwingWorker 类有助于做到这一点。阅读 its API doc ,和the tutorial关于 Swing 中的并发性。

关于Java Swing - UI block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10613630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com