Qt5.6中的跨平台webview

时间:2016-04-25 22:39:43

标签: mingw qt5 qtwebkit qwebview qtwebengine

我正在使用 Qt 5.6与Windows 10 64x上的MinGW 来开发跨平台应用程序(桌面+移动版)。

在Qt 5.5中,我可以使用WebKit创建一个跨平台的应用程序,用于在我的应用程序中显示网页,我可以在Windows,Android,iO上使用它... 今天,我意识到我们不能再使用它了,我们也不能对Windows使用QtWebView,也不能将QtWebEngine与MinGW一起使用。

因此,我很困惑:知道我想使用我当前的配置显示网页(对于Android桌面和移动版本),我该怎么办?

是否有希望在下一个Qt版本中解决它?

修改 即使我想运行Qt特殊webview(minibrowser)示例,它也会显示qmake错误:

Project ERROR: Unknown module(s) in Qt: webenginewidgets
Project ERROR: Unknown module(s) in Qt: webview

1 个答案:

答案 0 :(得分:7)

您不能将MinGW用于Qt的Web引擎。据说here

  

Windows:Visual Studio 2013或Visual Studio 2015

您可以在this page找到更多信息。此外,MinGW不能与Qt WebEngine一起使用的事实已被报告为错误(例如42725)并且解释如下:

  

Chromium本身不太可能支持MinGW,同样,QtWebEngine团队也需要做很多工作才能实现这一目标。很遗憾Qt MinGW包装因此而不完整。

Chromium是由Sub UpdateDB() On Error Resume Next Dim Dept_Row As Long Dim Dept_Clm As Long lastrow = ThisWorkbook.Worksheets(Worksheets.Count).Cells(ThisWorkbook.Worksheets(Worksheets.Count).Rows.Count, "C").End(xlUp).Row lastrowA = ThisWorkbook.Worksheets(Worksheets.Count).Cells(ThisWorkbook.Worksheets(Worksheets.Count).Rows.Count, "A").End(xlUp).Row lastrowI = Sheet1.Cells(Sheet1.Rows.Count, "I").End(xlUp).Row lastrowG = Sheet1.Cells(Sheet1.Rows.Count, "G").End(xlUp).Row table1 = ThisWorkbook.Worksheets(Worksheets.Count).Range("C2:C" & lastrow) table2 = ThisWorkbook.Worksheets(Worksheets.Count).Range("A2:D" & lastrowA) table3 = Sheet1.Range("I2:I" & lastrowI) table4 = Sheet1.Range("G2:K" & lastrowG) Dept_Clm = ThisWorkbook.Worksheets(Worksheets.Count).Range("B2").Column Dept_Row = ThisWorkbook.Worksheets(Worksheets.Count).Range("B2").Row 'Checking for delivery numbers of the filtered table and the new sheet and updating the corresponding remaining quantity For Each dl In table3 DLfiltered = Application.WorksheetFunction.Index(table4, Application.WorksheetFunction.Match(dl, table3, 0), 3) DLnewdb = Application.WorksheetFunction.Index(table2, Application.WorksheetFunction.Match(dl, table1, 0), 3) pcfiltered = Application.WorksheetFunction.Index(table4, Application.WorksheetFunction.Match(dl, table3, 0), 1) pcnewdb = Application.WorksheetFunction.Index(table2, Application.WorksheetFunction.Match(dl, table1, 0), 1) remainqty = Application.WorksheetFunction.Index(table4, Application.WorksheetFunction.Match(dl, table3, 0), 5) Row = Application.WorksheetFunction.Match(dl, table1, 0) 'If the delivery numbers and the product codes are the same, then update quantity If dlnewdb = dlfiltered And pcfiltered = pcnewdb Then ThisWorkbook.Worksheets(Worksheets.Count).Cells(Dept_Row, Dept_Clm) = remainqty End If Next CDN End Sub 集成的浏览器,在QWebEngine中集成的浏览器是WebKit,因此您不能再使用MinGW QWebkit