动态让控件超出屏幕_JAVA浏览器控件JxBrowser v7.5上线!更轻松处理Dynamic Favicons...
生活随笔
收集整理的這篇文章主要介紹了
动态让控件超出屏幕_JAVA浏览器控件JxBrowser v7.5上线!更轻松处理Dynamic Favicons...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
JxBrowser是將基于Chromium的瀏覽器與Java應(yīng)用程序集成,以處理和顯示HTML5、CSS3、JavaScript、Flash等。
近日,JxBrowser v7.5發(fā)布啦,JAVA應(yīng)用程序集成控件JxBrowser更新至7.5,允許將JavaScript對象轉(zhuǎn)換為JSON字符串,擴(kuò)展了允許獲取當(dāng)前加載的網(wǎng)頁的圖標(biāo)的功能,修復(fù)多項Bug。以下是具體的更新內(nèi)容。(點(diǎn)擊文末“了解更多”下載最新版)
新增功能
- JSON格式:JxBrowser 7.5允許將JavaScript對象轉(zhuǎn)換為JSON字符串,并從JSON字符串獲取JavaScript對象。例如: Json json = frame.json(); JsObject jsObject = json.parse("{"one":1,"two":2}"); String jsObjectJson = json.stringify(jsObject);
- 動態(tài)圖標(biāo):此版本擴(kuò)展了允許獲取當(dāng)前加載的網(wǎng)頁的圖標(biāo)的功能,此功能在7.2中引入。由于某些網(wǎng)頁會動態(tài)更改其圖標(biāo),因此,決定啟用JxBrowser,以便在加載的網(wǎng)頁上的圖標(biāo)被更改時獲得通知。方法如下: browser.on(FaviconChanged.class, event -> { Bitmap newFavicon = event.favicon(); });
- DOM API:在7.5中,使用JxBrowser 6中存在的以下方法擴(kuò)展了DOM API: Element.scrollIntoView(AlignTo alignTo) Node.compareDocumentPosition(Node otherNode)
- 渲染過程PID:此版本包含RenderProcessAPI和功能,允許獲取Frame運(yùn)行中的渲染過程的PID 。例如: frame.renderProcess().pid();
- 導(dǎo)航:Navigation類現(xiàn)在具有browser()方法,該方法允許獲取Navigation實例的Browser實例。
- 導(dǎo)航事件:NavigationStarted和NavigationFinished事件具有isInMainFrame()方法,該方法指示是否在主框架中進(jìn)行導(dǎo)航。
- UrlRequest的IP地址:ReceiveHeadersCallback.Params類已使用ipAddress()方法擴(kuò)展,該方法允許獲取UrlRequest的IP地址。
改進(jìn)
- 使用DOM和JavaScript對象時,此版本的性能更好。
- 所有敏感信息(例如鍵盤和鼠標(biāo)輸入,密碼等)都不會打印在調(diào)試日志消息中。
- DefaultStartDownloadCallback中顯示的“文件保存”對話框現(xiàn)在對于Swing和JavaFX實現(xiàn)都是模態(tài)的。
- Navigation.loadUrlAndWait()方法現(xiàn)在可以處理當(dāng)前加載的網(wǎng)頁內(nèi)部的導(dǎo)航(例如,對內(nèi)部#鏈接的導(dǎo)航)。
- 適用于Windows 32位和64位的所有Chromium二進(jìn)制文件均使用有效且經(jīng)授權(quán)的TeamDev簽名進(jìn)行簽名。
Bug修復(fù)
- 修復(fù)IllegalStateException錯誤,當(dāng)在硬件加速渲染模式下刪除另一個BrowserView并關(guān)閉其Browser之后將BrowserView聚焦時。
- 修復(fù)在非屏幕渲染模式下在加載的網(wǎng)頁上進(jìn)行主動渲染(例如播放HTML5視頻)期間訪問功能時,線程鎖定。
- 修復(fù)在Windows的屏幕外渲染模式下關(guān)閉“打印預(yù)覽”對話框時,線程死鎖問題。
- 修復(fù)在Windows上以硬件加速渲染模式調(diào)整BrowserView大小時,由負(fù)寬度和高度引起的IllegalArgumentException錯誤。
- 修復(fù)當(dāng)關(guān)閉瀏覽器實例時,當(dāng)它們的引擎仍處于活動狀態(tài)時,內(nèi)存泄漏。
- 修復(fù)從容器中刪除BrowserView組件時,發(fā)生內(nèi)存泄漏。
- 調(diào)整BrowserView大小時,macOS上的Chromium GPU進(jìn)程中的內(nèi)存泄漏。根本原因在于兩種渲染模式下未發(fā)布的mach端口。萬一所有可用端口都被占用,此泄漏可能會導(dǎo)致系統(tǒng)重新引導(dǎo)。
- 修復(fù)調(diào)用XPathResult。 asSnapshotNodes()方法在應(yīng)返回空集合時拋出XPathException錯誤。
- 修復(fù)將當(dāng)Document實例屬于IFRAME時,Document.frame()方法返回錯誤的Frame。
- 修復(fù)當(dāng)HTTP標(biāo)頭在ReceiveHeadersCallback中被覆蓋時,CanGetCookiesCallback回調(diào)未從Web服務(wù)器接收預(yù)期的cookie。
- 修復(fù)將Swing BrowserView組件嵌入JTabbedPane容器時,Web內(nèi)容顯示在主屏幕的左上角。
總結(jié)
以上是生活随笔為你收集整理的动态让控件超出屏幕_JAVA浏览器控件JxBrowser v7.5上线!更轻松处理Dynamic Favicons...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海南免税是免什么税 大多数都不知道
- 下一篇: 基金会属于哪个部门