有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

swt Java jface从相对位置调用浏览器

我遇到了一个需要帮助的小问题。问题是,我希望调用一个调用html页面的浏览器窗口。html文件在3种不同的浏览器中打开,因此代码应该是正确的。实际问题是,它会显示一条页面无法显示的错误消息

下面是获取位置的代码

    package org.error;

    public class BrowserLocation {

        private String test1 = "org\\error\\PatientNumberError.html";

        public BrowserLocation() {
        }

        public String patientNumberAddress() {
            return test1;
        }
    }

下面是创建浏览器组件并调用html文件位置的代码

    Browser browser = new Browser(container, SWT.NONE);
    browser.setForeground(SWTResourceManager.getColor(SWT.COLOR_DARK_BLUE));
    browser.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
    browser.setUrl(browserLocation.patientNumberAddress());
    browser.setBounds(25, 25, 315, 180);

有可能发现我的错误吗


共 (2) 个答案

  1. # 1 楼答案

    setUrl需要一个URL所以你需要这样的东西:

    browser.setUrl(new File(path).toURI().toURL().toString());
    
  2. # 2 楼答案

    很抱歉没有早点给你回复。 我认识的一位高级Java程序员告诉我,我遇到的问题是绝对地址相对地址的对比

    这样做的原因是,如果我读写文件,那么我就可以使用相对地址。然而,如果我与一台服务器进行交互(这里就是这种情况),因为它最终可以上线(如果我有钱的话),它需要是一个绝对地址

    由于我还在学习Java编程,这是一个非常具体和重要的教训。我希望这将有助于任何有这个问题的人