【问题标题】:Controlling selenium through a Swing GUI通过 Swing GUI 控制 selenium
【发布时间】:2011-02-02 17:04:20
【问题描述】:

我创建了一个 Swing 应用程序,它本质上将使用 selenium 来监视网站上显示的字段值并将其结果记录到文件中。我使用 swing GUI 的原因是允许用户通过将其添加到 JList 来轻松输入他们希望监控的字段。

一切正常,但是当我单击“开始监控”按钮(创建一个 selenium 线程并运行它)时,selenium 线程完全接管并且不允许与 swing GUI 进行任何交互。

我想在swing GUI“停止监控”上设置一个按钮来停止selenium,但这是不可能的,因为在selenium 运行时我无法与swing GUI 交互。

提前致谢

【问题讨论】:

  • 我尝试做类似的事情。你能给我一个指针如何将一个硒控制的Firefox实例集成到一个swing gui中吗?

标签: java swing selenium


【解决方案1】:

您的 selenium 代码正在锁定 EDT 或事件调度线程,这是 Swing 用于用户交互和 GUI 绘制的主线程。解决方案是在后台线程中调用 selenium 代码,例如使用 SwingWorker 对象。您可以在 SwingWorker 教程中阅读有关如何执行此操作的更多信息:Concurrency in Swing

一旦你解决了这个问题,你应该能够让你的“停止监控”JButton 工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-05
    • 2013-07-13
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    相关资源
    最近更新 更多