gpt4 book ai didi

delphi - 如何更改 TChromium 组件的默认背景颜色?

转载 作者:行者123 更新时间:2023-12-03 15:57:15 24 4
gpt4 key购买 nike

我使用TChromium 。我分配了 AWebPageAsString,它是一个带有灰色背景颜色的静态 HTML 页面。

FBrowser := TChromium.Create(pnlHolder);
FBrowser.Visible := false;
FBrowser.Parent := TWinControl(pnlHolder);
FBrowser.Align := alClient;
FBrowser.OnBeforeBrowse := BrowserBeforeBrowse;
FBrowser.HandleNeeded;
FBrowser.FontOptions.RemoteFontsDisabled := true;
FBrowser.Browser.MainFrame.LoadString(AWebPageAsString, 'navigate:webpage');

当我启动应用程序时,它首先显示为白色背景和空内容,然后我的页面显示为灰色背景和实际内容。

有办法避免这种情况吗?也许有默认背景颜色?

最佳答案

我知道,这个答案很晚了,但这至少是一个有趣的话题。要更改默认浏览器的背景颜色,您可以使用自定义样式表。这听起来不错,但它有一个很大的弱点 - 当你导航到一个页面时,例如未定义样式表,将应用您的自定义样式表。但如果你知道你会浏览例如仅您的页面采用某种样式,这甚至可能是一个优势,因为这样您就可以保留在默认自定义样式中定义的样式定义。

因此,要创建一个黑色背景的浏览器(使用下面描述的样式),您可以使用以下代码:

procedure TForm1.FormCreate(Sender: TObject);
const
CSSHeader = 'data:text/css;charset=utf-8;base64,';
CSSBase64 = 'Ym9keSB7YmFja2dyb3VuZC1jb2xvcjpibGFjazt9';
begin
Chromium1.UserStyleSheetLocation := CSSHeader + CSSBase64;
Chromium1.Options.UserStyleSheetEnabled := True;
Chromium1.ReCreateBrowser('about:blank');
end;

上面代码中使用的 CSSBase64 常量是以下样式表 encoded to Base64 :

body {background-color:black;}

关于delphi - 如何更改 TChromium 组件的默认背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8645814/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com