我删除了窗口的标题栏,所以它现在只有一个边框。我不想要将BorderStyle
设置为bsNone
,但我想删除边框。我该怎么办?
让我解释一下。我想像Photoshop GUI一样。如果我将边框样式设置为bsNone,我将在win7上丢失很多功能。我尝试使用GraphicControls而不是Form Caption栏来移动窗口(通过处理WMNCHitTest消息)。它工作但双击不会最大化并恢复窗口当边框样式是bsNone但但是当它是bsResizable时一切正常。我想将BorderStyle设置为bsResizable,但我想删除边框,就像它是bsNone一样
答案 0 :(得分:2)
您可以将表单的边框设置为bsNone,然后将一个面板添加到表单中。将面板的align属性设置为alClient,并根据需要调整其边框。您可以控制内部和外部斜面及其宽度为1像素粒度。由于Panel1是一个容器,所以很容易将所有内容拖到它上面,就好像它就是表单本身一样。在设计师中,它几乎是不可见的。
如果您不熟悉它,可以使用结构视图将所有控件从一个容器拖动到另一个容器(在旧版本中称为对象树视图)。这使得您无需重新设计表单即可完成此操作。如果面板本身有问题,您可以随时将其发送到后面并将所有其他控件保留在表单上。它看起来完全一样,但是控件保持TForm父级而不是TPanel父级。在设计师中维护它只是一件额外的事情。
话虽如此,我还建议考虑梅森关于非标准用户界面的评论。
答案 1 :(得分:1)
将bordertyle设置为“bsSizeToolWin”不是一个选项吗?它将是一个更薄的边框,但它可以调整大小,它仍然符合Windows标准......
答案 2 :(得分:0)
我还没有看过最新的Photoshop,但我想你需要这样的东西:http://delphihaven.wordpress.com/2010/04/22/setting-up-a-custom-title-bar-reprise/