【问题标题】:Converting simple QWebView example to Java将简单的 QWebView 示例转换为 Java
【发布时间】:2012-08-23 14:04:38
【问题描述】:

您如何使用 QWebView 小部件将以下简单的 C 语言 QT 示例转换为 Java (QtJambi):

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QWebView view;
    view.load(QUrl("http://www.trolltech.com/"));
    view.show();
    return app.exec();
}

(位于:http://doc.qt.nokia.com/qq/qq26-webplugin.html#qtwebkitbasics)

我可能弄错了,但我想我记得去年 Qt-Jambi javadoc 中有这样一个例子,但我再也找不到它了,当我转到 http://qt-jambi.org/documentation 时,它说“Apidoc of latest built (原文如此)还没有工作”

【问题讨论】:

  • Java API 文档不再构建,因为 Qt 和用于生成它们的“qdoc3”工具已删除其 Java/javadoc 支持。我认为这是因为(当时)诺基亚的管理者不再支持 Java,并且没有时间或兴趣将其与 C++ 业务需求一起维护。但是,一旦任务优先级成为积压列表的顶部,就有一种策略可以创建替代机制来生成它们。

标签: qt-jambi


【解决方案1】:

Qt Jambi 中的 API非常与原始 Qt API 相似,因此几乎可以直接翻译示例。

所以是C++版本

QWebView view;
view.load(QUrl("http://www.trolltech.com/"));

在Java中被翻译成如下

QWebView view = new QWebView();
view.load(new QUrl("http://www.trolltech.com/"));

应用程序的其余部分(创建主窗口、运行应用程序)可以在hello world tutorial 中找到。

我的家庭 mac 上没有工作环境,但这个示例应该可以工作:

import com.trolltech.qt.core.*;
import com.trolltech.qt.gui.*;
import com.trolltech.qt.webkit.*;

public class SO12093494 extends QMainWindow {

   private QWebView webView;

   public SO12093494() { this(null); }
   public SO12093494(QWidget parent) {
      super(parent);

      webView = new QWebView();
      setCentralWidget(webView);
   }

   public void loadUrl(String url) {
      webView.load(new QUrl(url));
   }

   public static void main(String[] args) {
      QApplication.initialize(args);

      SO12093494 app = new SO12093494();
      app.loadUrl("http://www.trolltech.com");
      app.show();

      QApplication.exec();
   }
}

【讨论】:

    猜你喜欢
    • 2013-02-17
    • 2013-05-09
    • 1970-01-01
    • 2011-08-21
    • 1970-01-01
    • 2022-11-24
    • 2012-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多