1

问题 我正在使用一种表格,其中航空玻璃边框从顶部延伸约 80 像素。TMainMenu 不支持开箱即用的自定义定位,我只假设它可能通过所有者绘制来实现。即使在双缓冲为 true 的情况下,在默认位置的表单上绘制文本也无法在任何版本的 delphi 中正确显示(此处为 07、09 由朋友在 10 XE 上测试)。

我真正想要的是菜单是透明的,带有黑色文本,并且如果可能的话,在较低和正确的自定义位置。

我使用平面速度按钮和弹出菜单来模拟效果没有问题,因为它运行良好。我必须计算文本的宽度,以便语言翻译适当地设置按钮的宽度。所以我只是想看看是否有替代方案。

我所知道的和已经 出现的 说实话并不是很多。看到了一些使画笔透明的 API 调用,这适用于其他任务,但似乎并非如此。

我在 VB Pascal 和 C# 中查看了一些自定义绘制的项目,但仍然没有看到我在寻找什么。如果有人能指出我正确的方向,我将不胜感激。到目前为止,我所做的只是绘制没有 3d 渐变的菜单。

4

1 回答 1

2

我不相信这是可能的,使用 TMainMenu。我相信你可以很容易地做到这一点,但是通过使用表单下拉菜单,使其成为一块玻璃,并使用每个玻璃表单模拟 TMainMenu 中的一个菜单

于 2011-01-19T20:09:41.153 回答