Delphi 12.3調用Chrome/edge內核實現DEMO源碼

DELPHI使用調用Chrome/Edge內核瀏覽器,雖然舊的WebBrowser也還可以用,但大勢所趨,新版的已經不需要使用第三方的組件了,算是全內置的開發了,不廢話

Unit1 源碼 + Form 源碼

unit Unit1;interfaceusesWinapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Winapi.WebView2, Winapi.ActiveX,Vcl.Buttons, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.Edge, Vcl.OleCtrls, SHDocVw;typeTForm1 = class(TForm)EdgeBrowser1: TEdgeBrowser;Panel1: TPanel;Edit1: TEdit;SpeedButton1: TSpeedButton;procedure Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);procedure SpeedButton1Click(Sender: TObject);procedure EdgeBrowser1DocumentTitleChanged(Sender: TCustomEdgeBrowser;const ADocumentTitle: string);procedure EdgeBrowser1NavigationCompleted(Sender: TCustomEdgeBrowser;IsSuccess: Boolean; WebErrorStatus: COREWEBVIEW2_WEB_ERROR_STATUS);procedure EdgeBrowser1NavigationStarting(Sender: TCustomEdgeBrowser;Args: TNavigationStartingEventArgs);privateprocedure navigateto(url: String);{ Private declarations }public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}procedure TForm1.navigateto(url: String);
beginif not url.Contains('://') thenurl := 'http://' + url;EdgeBrowser1.Navigate(url);
end;procedure TForm1.EdgeBrowser1DocumentTitleChanged(Sender: TCustomEdgeBrowser;const ADocumentTitle: string);
beginCaption := 'Delphi 12.3 EdgeBrowser Demo (13316098767@qq.com)  ' + EdgeBrowser1.DocumentTitle ;
end;procedure TForm1.EdgeBrowser1NavigationCompleted(Sender: TCustomEdgeBrowser;IsSuccess: Boolean; WebErrorStatus: COREWEBVIEW2_WEB_ERROR_STATUS);
beginedit1.text := EdgeBrowser1.LocationURL;
end;procedure TForm1.EdgeBrowser1NavigationStarting(Sender: TCustomEdgeBrowser;Args: TNavigationStartingEventArgs);
varuri : PWideChar;
beginArgs.ArgsInterface.Get_uri(uri);edit1.text := uri;
end;procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
beginif key = vk_return thenbeginnavigateto(edit1.Text);end;
end;procedure TForm1.SpeedButton1Click(Sender: TObject);
beginnavigateto(edit1.Text);
end;end.
object Form1: TForm1Left = 0Top = 0Caption = 'Delphi 12.3 EdgeBrowser Demo Test (13316098767@qq.com)'ClientHeight = 509ClientWidth = 899Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -12Font.Name = 'Segoe UI'Font.Style = []TextHeight = 15object EdgeBrowser1: TEdgeBrowserLeft = 0Top = 44Width = 899Height = 465Align = alClientTabOrder = 0AllowSingleSignOnUsingOSPrimaryAccount = FalseTargetCompatibleBrowserVersion = '117.0.2045.28'UserDataFolder = '%LOCALAPPDATA%\bds.exe.WebView2'OnDocumentTitleChanged = EdgeBrowser1DocumentTitleChangedOnNavigationStarting = EdgeBrowser1NavigationStartingOnNavigationCompleted = EdgeBrowser1NavigationCompletedendobject Panel1: TPanelLeft = 0Top = 0Width = 899Height = 44Align = alTopBevelOuter = bvNoneCaption = 'Panel1'TabOrder = 1object SpeedButton1: TSpeedButtonLeft = 855Top = 0Width = 44Height = 44Align = alRightCaption = '&G'Font.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -24Font.Name = 'Segoe UI'Font.Style = []ParentFont = FalseOnClick = SpeedButton1ClickExplicitHeight = 41endobject Edit1: TEditLeft = 0Top = 0Width = 855Height = 44Align = alClientFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -20Font.Name = 'Segoe UI'Font.Style = []ParentFont = FalseTabOrder = 0Text = 'http://www.google.com'OnKeyDown = Edit1KeyDownExplicitHeight = 36endend
end

發布是記得帶上這個對應版本的DLL就好了

這個是csdn的效果

有疑問建議:+v 13316098767

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/80937.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/80937.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/80937.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

快速搭建一個electron-vite項目

1. 初始化項目 在命令行中運行以下命令 npm create quick-start/electronlatest也可以通過附加命令行選項直接指定項目名稱和你想要使用的模版。例如,要構建一個 Electron Vue 項目,運行: # npm 7,需要添加額外的 --: npm cre…

26考研 | 王道 | 計算機組成原理 | 一、計算機系統概述

26考研 | 王道 | 計算機組成原理 | 一、計算機系統概述 文章目錄 26考研 | 王道 | 計算機組成原理 | 一、計算機系統概述1.1 計算機的發展1.2 計算機硬件和軟件1.2.1 計算機硬件的基本組成1.2.2 各個硬件的工作原理1.2.3 計算機軟件1.2.4 計算機系統的層次結構1.2.5 計算機系統…

01-數據結構概述和時間空間復雜度

數據結構概述和時間空間復雜度 1. 什么是數據結構 數據結構(Data Structure)是計算機存儲、組織數據的方式,指相互之間存在一種或多種特定關系的數據元素的集合。 2. 什么是算法 算法(Algorithm)就是定義良好的計算…

大數據架構選型全景指南:核心架構對比與實戰案例 解析

目錄 大數據架構選型全景指南:核心架構對比與實戰案例解析1. 主流架構全景概覽1.1 核心架構類型1.2 關鍵選型維度 2. 架構對比與選型矩陣2.1 主流架構對比表2.2 選型決策樹 3. 案例分析與實現案例1:電商實時推薦系統(Lambda架構)案…

(51單片機)LCD顯示紅外遙控相關數字(Delay延時函數)(LCD1602教程)(Int0和Timer0外部中斷教程)(IR紅外遙控模塊教程)

前言: 本次Timer0模塊改裝了一下,注意!!!今天只是簡單的實現一下,明天用次功能顯示遙控密碼鎖 演示視頻: 在審核 源代碼: 如上圖將9個文放在Keli5 中即可,然后燒錄在…

網絡實驗-防火墻雙機熱備份

實驗目的 了解防火墻雙機熱備份配置,提供部署防火墻可靠性。 網絡拓撲 左側為trust域,右側為untrust域。防火墻之間配置雙機熱備份。 配置內容 master VRRP 由于防火墻是基于會話表匹配回程流量,流量去向和回程必須通過同一個防火墻。…

【2025最新】VSCode Cline插件配置教程:免費使用Claude 3.7提升編程效率

 ?2025年最新VSCode Cline插件安裝配置教程,詳解多種免費使用Claude 3.7的方法,集成DeepSeek-R1與5大實用功能,專業編程效率提升指南。 Cline是VSCode中功能最強大的AI編程助手插件之一,它能與Claude、OpenAI等多種大模型無縫集…

考研英一真題學習筆記 2018年

2018 年全國碩士研究生招生考試 英語 (科目代碼:201) Section Ⅰ Use of English Directions: Read the following text. Choose the best word(s) for each numbered blank and mark A, B, C or D on the ANSWER SHEET. (10 points) Trust i…

華碩服務器-品類介紹

目錄 一、核心產品線解析 1. 機架式服務器 2. 塔式服務器 3. 高密度計算服務器 二、關鍵技術與模組配置 1. 主板與管理模塊 2. 電源與散熱 3. 存儲與網絡 三、應用場景與行業解決方案 1. 人工智能與高性能計算 2. 云計算與虛擬化 3. 邊緣計算與工業物聯網 一、核心…

硅基計劃2.0 學習總結 貳

一、程序邏輯控制(順序、選擇&循環) 順序結構就不多介紹了,就是各個語句按照先后順序進行執行 (1)選擇結構 三大選擇類型:if、if-else、if-else if-else以及懸浮else的問題 基本已經在之前在C語言文章…

RabbitMQ最新入門教程

文章目錄 RabbitMQ最新入門教程1.什么是消息隊列2.為什么使用消息隊列3.消息隊列協議4.安裝Erlang5.安裝RabbitMQ6.RabbitMQ核心模塊7.RabbitMQ六大模式7.1 簡單模式7.2 工作模式7.3 發布訂閱模式7.4 路由模式7.5 主題模式7.6 RPC模式 8.RabbitMQ四種交換機8.1 直連交換機8.2 主…

工具學習_VirusTotal使用

VirusTotal Intelligence 允許用戶在其龐大的數據集中進行搜索,以查找符合特定條件的文件,例如哈希值、殺毒引擎檢測結果、元數據信息、提交時的文件名、文件結構特征、文件大小等。可以說,它幾乎是惡意軟件領域的“谷歌搜索引擎”。 網頁使…

計算機系統----軟考中級軟件設計師(自用學習筆記)

目錄 1、計算機的基本硬件系統 2、CPU的功能 3、運算器的組成 4、控制器 5、計算機的基本單位 6、進制轉換問題 7、原碼、反碼、補碼、移碼 8、浮點數 9、尋址方式 10、奇偶校驗碼 11、海明碼 12、循環冗余校驗碼 13、RISC和CISC 14、指令的處理方式 15、存儲器…

揚州卓韻酒店用品:優質洗浴用品,提升酒店滿意度與品牌形象

在酒店提供的服務里,沐浴用品占據了非常重要的地位,其質量與種類直接關系到客人洗澡時的感受。好的沐浴用品能讓客人洗澡時感到舒心和快樂,反之,質量不好的用品可能會影響客人整個住宿期間的愉悅心情。挑選恰當的洗浴用品不僅能夠…

學習筆記:黑馬程序員JavaWeb開發教程(2025.4.5)

12.4 登錄認證-登錄校驗-會話跟蹤方案一 設置cookie,服務器給瀏覽器響應數據,通過control方法形參當中獲取response,調用response當中的addCookie方法實現 獲取cookie,調用getCookie方法 用戶可以通過瀏覽器設置禁用cookie 跨域…

進程替換講解

1. 基本概念 1.1 進程替換 vs. 進程創建 進程創建:使用fork()或clone()等系統調用創建一個新的子進程,子進程是父進程的副本,擁有相同的代碼和數據。進程替換:使用exec系列函數在當前進程中加載并執行一個新的程序,替…

【微服務】SpringBoot + Docker 實現微服務容器多節點負載均衡詳解

目錄 一、前言 二、前置準備 2.1 基本環境 2.2 準備一個springboot工程 2.2.1 準備幾個測試接口 2.3 準備Dockerfile文件 2.4 打包上傳到服務器 三、制作微服務鏡像與運行服務鏡像 3.1 拷貝Dockerfile文件到服務器 3.2 制作服務鏡像 3.3 啟動鏡像服務 3.4 訪問一下服…

1.2.2.1.4 數據安全發展技術發展歷程:高級公鑰加密方案——同態加密

引言 在密碼學領域,有一種技術被圖靈獎得主、著名密碼學家Oded Goldreich譽為"密碼學圣杯",那就是全同態加密(Fully Homomorphic Encryption)。今天我們就來聊聊這個神秘而強大的加密方案是如何從1978年的概念提出&…

vllm量化03—INT4 W4A16

本系列基于Qwen2.5-7B,學習如何使用vllm量化,并使用benchmark_serving.py、lm_eval 測試模型性能和評估模型準確度。 測試環境為: OS: centos 7 GPU: nvidia l40 driver: 550.54.15 CUDA: 12.3本文是該系列第3篇——INT4 W4A16 一、量化 f…

第二十五天打卡

常見報錯類型 try-except-else-finally 語句 首先執行try語句,若正確直接執行else語句 若try語句發生錯誤,則判斷錯誤類型,執行錯誤類型對應的except語句,不執行else語句 finally語句無條件執行,多用于資源保存&…