【问题标题】:Delphi TBrowser not rendering image uploader for wysiwyg editor properly [duplicate]Delphi TBrowser 无法正确渲染所见即所得编辑器的图像上传器[重复]
【发布时间】:2015-09-03 05:54:46
【问题描述】:

WYSIWYG 编辑器在浏览器(IE、chrome 等)和 Delphi 中的 TweBrowser 中都能正常呈现,但文件管理器弹出窗口不能正常呈现,功能也不能正常工作。

它确实显示图像。但是当我单击图像时,它不会插入图像。该按钮也不存在,一些标签似乎已经消失。这是有原因的吗?

有办法解决吗?

德尔福版 Chrome 版

更新:

在一些帮助下,我发现问题是 Delphi 正在使用 IE7 兼容性...无论如何强制 Delphi 使用它将兼容的另一个版本的 IE?

我知道该页面与任何 IE8 及更高版本兼容...

【问题讨论】:

  • 您知道嵌入式浏览器默认处于 IE7 模式吗?查看here 了解更多信息。
  • @whosrdaddy 好的,所以 Delphi 的 TWebbrowser 与 IE7 兼容的任何东西都兼容,如果我理解你的话,对吗?那么解决方案是使php与IE7兼容吗?
  • 如果你可以控制网页,你可以添加一个元标记来强制浏览器进入边缘模式。 (<meta http-equiv="X-UA-Compatible" content="IE=edge" />)。链接答案中提供了详细信息。
  • @whosrdaddy 那会做什么?
  • 强制浏览器进入本机模式(即如果你有IE10,页面将在IE10模式下运行,如果你有IE11,页面将在IE11模式下运行)。您可以使用 IE 和 F12 功能模拟您的问题并选择仿真选项卡 (Ctrl-8)

标签: delphi internet-explorer twebbrowser


【解决方案1】:

如果您可以控制标记,那么快速而简单的解决方案就是 添加此元数据 <meta http-equiv="X-UA-Compatible" content="IE=8" /> 您可以指定所需的最低级别(在这种情况下为 IE8)您可以尝试使用最新可用的 <meta http-equiv="X-UA-Compatible" content="IE=edge" />,但请注意您可能会遇到渲染速度问题。

虽然了解较新的样式,但此基本解决方案也会在不同 DPI 下出现缩放问题(尝试使用高 DPI 计算机,您会看到一些令人讨厌的格式),这需要更复杂的解决方案。您需要研究在您的表单上实现IDocHostUIHandlerIOleClientSite。 DelphiDabbler.com 对此有一些信息。但简而言之,您需要传递DocHostUIInfo 结构并设置DOCHOSTUIFLAG_DPI_AWARE 标志。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-26
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2019-09-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多