- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 64 位 Windows 计算机 (Win 7) 和 32 位 Windows 计算机 (XP) 上运行 Delphi 2010。
我正在尝试学习如何使用 TRibbon 控件。
我一直在遵循 Marco Cantu 2009 年手册中的示例并观看 YouTube 演示,但我的控件并不像书中或演示中所解释的那样工作。
我通过右键单击控件添加了两个选项卡。然而,当我将 TRibbon 放在主窗体上时,它看起来与我的屏幕截图中的一模一样。它没有书本或 YouTube 演示中的那么高。
我在运行 Windows Xp 和 Delphi 2010 的 Win 32 笔记本电脑上尝试了同样的操作,并得到了完全相同的结果
这是我的机器上的样子
这是演示中的样子
再一次。当它把它放在表单上时,它的形状和高度并不像我在演示中看到的那样。即使我添加标签。我在安装 Delphi 2010 的过程中是否做错了什么?
最佳答案
我终于在启用了 Aero 的 Win7 64 上的 Delphi XE(更新 1)中重现了该问题。 .DFM 文件中的大小似乎设置错误,因为 Ribbon
不支持手动调整大小,您无法在 IDE
(尽管它在运行时正确显示)
或 Object Inspector
中直观地修复它。它偶尔会在运行时正确显示,但似乎也是零星的。
这是一个令人讨厌的错误,因为它使得设计Ribbon
变得不可能。 。您可以添加RibbonGroup
项,并分配 ActionManager
,并尝试完全使用 Structure Pane
来设计它,但这当然不是一个实用的解决方案。
幸运的是,有一个非常简单的解决方法,尽管不得不这样做很烦人。 :)
我两次设法让以下解决方法发挥作用,但重新开始几次都失败了,因此这是一种可能的解决方法(没有 promise - 在 XE 中有效,在 XE2 更新 2 中始终失败):
Ribbon
并添加至少一个选项卡。
View as Text
从上下文(弹出)菜单。
Ribbon
控制在
.dfm
文本,然后更改
Height
来自
26
IDE 分配给
200
。 (下一步将对其进行调整,但这很好 -
200
解决了眼前的问题。)
View as Form
,以及
Ribbon
应正确显示。
(我在 XE2 Update 2 的 QC 中报告了该问题,因为该问题也存在 -
QC #101642 )
我追踪到
TCustomRibbon.GetCaptionHeight
,具体来说
FCaptionHeight := Max(GetSystemMetrics(SM_CYCAPTION), 26);
看起来像GetSystemMetrics
调用返回的值小于 26
在某些 Win7 配置上(虽然我还不知道为什么)。该方法中有几行注释行似乎会改变结果,但正如我所说,它们已被注释掉。
奇怪的部分是在 TCustomRibbon.Create
中,Height
通过调用 GetRibbonMetric(rmFullHeight)
设置,它设置 Result := cRibbonHeight + GetCaptionHeight;
,和cRibbonHeight
是一个常数,定义为 cRibbonHeight = 117;
.
我终于找到了这个。在TRibbon
的声明中,有一个published
属性声明:
published
...
property Height default TCustomRibbon.cRibbonHeight;
因为这是默认值,所以任何其他值似乎都意味着调用 GetRibbonMetric
上面提到的情况不会发生(参见上面提到的 TCustomRibbon.Create
),并且调用 GetSystemMetric
会产生奇怪的结果导致错误值26
保存为“其他值”。奇怪;将在 AM 中更新 QC。
附录:更新了质量控制报告并提供了更多详细信息。
附录:QC 报告 opened 2012 年 5 月,但截至 XE5 更新 1 似乎尚未解决(2014 年 1 月检查)。
关于delphi - TRibbon 不显示选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8421205/
在 Android 的 API > 19 中是否有任何方法可以获取可移动 SD 卡的路径? 与外部 SD 卡一样,我们有 Environment.getExternalStorageDirectory
一些 Android 设备有 microSD(或其他存储卡)插槽,通常安装为 /storage/sdcard1 据我所知,自 Android 4.4 起 Google 限制了对此内存的访问,并在 An
我使用 Java Card 2.1.2 SDK 和 GPShell 作为与设备通信的方式在 Java Card 上构建一个项目。我从 GpShell 测试了 helloworld 示例,并成功发送了
我开发了一个应用程序,它有一个来电接收器,它适用于所有手机。一位用户有一部双 SIM 卡安卓手机。该应用程序适用于第一张 SIM 卡。但是当有人调用他的第二张 SIM 卡时,我们的应用程序不会被调用。
我有一个带预览的文件输入。 这是笔 Codepen 我想强制高度,我无法理解我该怎么做。我想将此组件的高度固定为 300px(示例),我还需要保持加载图像的正确纵横比,用灰色背景填充空白。现在我保持宽
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 6年前关闭。 Improve this qu
我正在使用此代码访问 SD card : import os from os.path import join from jnius import autoclass #from android.pe
我正在为数据记录设备编写固件。它以 20 Hz 的频率从传感器读取数据并将数据写入 SD 卡。但是,向SD卡写入数据的时间并不一致(大约200-300 ms)。因此,一种解决方案是以一致的速率将数据写
我正在使用以下代码将视频放到网站上,但是在垂直方向上,手机屏幕上只能看到视频的左半部分 我不是网络开发人员。有人可以告诉我确切的内容吗,如何使其正确放置在手机屏幕上? 是在youtube iframe
我正在使用 Vuetify 1.5 和 Vuetify 网格系统来设置我的布局。现在我有一个组件 HelloWorld我将其导入到我的 Parent 中成分。我已经在我的 HelloWorld 中设置
我使用 python 制作了一个简单的二十一点游戏。我制作了游戏的其余部分,但我正在努力放入 ASCII 卡,所以这只是代码的一小部分。我尝试将 * len(phand) 放在附加行的末尾。虽然这确实
我正在使用玩家卡设置 Twitter 卡。它可以在预览工具中运行,但文档说它需要在“twitter.com 现代桌面浏览器? native iOs 和 Android Twitter 应用程序?mob
任何旧的 GSM 兼容 SIM 卡(3G USIM 的奖励)。 我想我需要一些硬件?谁能为业余爱好者推荐一些便宜的东西,以及一些更专业的东西? 我认为会有一个带有硬件的 API 的完整文档,所以也许这
我使用 python 制作了一个简单的二十一点游戏。我制作了游戏的其余部分,但我正在努力放入 ASCII 卡,所以这只是代码的一小部分。我尝试将 * len(phand) 放在附加行的末尾。虽然这确实
我记得前一段时间读到有 cpu 卡供系统添加额外的处理能力来进行大规模并行化。任何人都有这方面的经验和任何资源来研究项目的硬件和软件方面吗?这项技术是否不如传统集群?它更注重功率吗? 最佳答案 有两个
我检查外部存储是否已安装并且可用于读/写,然后从中读取。我使用的是确切的官方 Android 示例代码 ( from here )。 它说外部存储未安装。 getExternalFilesDir(nu
在 Android 2.1 及更低版本中,Android 应用程序可以请求下载到 SD 卡上吗?另外我想知道应用程序是否可以请求一些包含视频的文件夹下载到 SD 卡上?以及如何做到这一点? 提前致谢。
我们编写了一个 Windows 设备驱动程序来访问我们的自定义 PCI 卡。驱动程序使用 CreateFile 获取卡的句柄。 我们最近在一次安装中遇到了问题,卡似乎停止工作了。我们尝试更换卡(更换似
有些新设备(例如 Samsung Galaxy)带有两个 SD 卡。我想知道是否有任何方法可以确定设备是否有两张 SD 卡或一张 SD 卡。谢谢 最佳答案 我认为唯一的方法是使用 检查可用根的列表 F
我正在尝试将文件读/写到 SD 卡。我已经尝试在我的真实手机和 Eclipse 中的模拟器上执行此操作。在这两种设备上,对/mnt/sdcard/或/sdcard 的权限仅为“d--------”,我
我是一名优秀的程序员,十分优秀!