igl*_*vzx 24 windows-7 notepad++ gui styles
在带有 Aero 主题的 Windows 7 上,Notepad++ 的首选项窗口有方角、没有系统菜单图标、关闭按钮和较暗的1px
边框。这个窗口也有一个AlwaysOnTop
属性。
(我调整了窗口的大小以适应640px
.)
有趣的是,您可以使用AutoHotkey将此样式复制到其他窗口。因此,似乎没有涉及肮脏的伎俩。但是,我认为我在其他任何地方都没有见过这种窗口样式。
微软谴责使用这种风格吗?这种窗户有名字吗?
对于好奇:正常与“方形”
Syn*_*ech 37
它被称为Tool(bar) Window。任何具有WS_EX_TOOLWINDOW
扩展样式的窗口都将在没有系统菜单或最小化/最大化框和小标题栏的情况下呈现。在 Windows XP 及更高版本(支持主题)中,工具窗口通常在渲染时没有圆角(至少在默认主题下)。
这种样式通常用于工具栏(图 1)。您可以通过从允许您重新排列工具栏的程序中拖出工具栏来查看它。请注意,它变成了一个看起来像所讨论的窗口的窗口。Windows 资源管理器也将其用于基本相同的桌面带(图 2)。您可以通过将文件夹拖到屏幕边缘之一来查看这些,然后将生成的工具栏/桌面带拖到桌面上。
显然,有些程序将样式用于其他目的,通常是作为创建一种模态临时对话框的一种方式,该对话框是主程序的子程序。
注意:这有几个影响(前两个通常是其非标准使用的原因):
图 1: MSPaint 工具栏窗口
图 2: Windows 资源管理器桌面带
Bob*_*Bob 17
这详细说明了此窗口样式的名称以及 .NET 中可用的选项;请参阅@Synetech 对此窗口样式的原始目的的出色回答,它可能用于此类对话框的原因以及在非托管 Windows 程序(如 Notepad++)中的实现。
窗口有方角,看起来像这样,因为 Notepad++ 的设计者/程序员之一决定使用特定的窗口样式。Synetech 详细介绍了该窗口样式的优点。
在 .NET/Visual Studio 中,这是在类的FormBorderStyle
属性中设置的System.Windows.Forms.Form
。具体来说,它是FixedToolWindow
. 可能的值在System.Windows.Forms.FormBorderStyle
枚举中。
ToolWindow
.NET 中所有默认值的s 与WS_EX_TOOLWINDOW
Windows API 中的普通 s 的工作方式略有不同,尽管它们看起来相同。通过测试,我确定它们确实出现在任务栏上并且它们确实出现在Alt+Tab任务切换器上,除非表单属性ShowInTaskbar
设置为false
. ShowInTaskbar
影响在任务栏都和知名度Alt+Tab为ToolWindow
S,但只有任务栏等等。
同时,也可以从更常见的窗口样式中删除图标/最小化/恢复/最大化按钮,尽管似乎无法将它们添加到ToolWindow
s。也可以从任务栏中隐藏普通窗口。
WS_EX_TOOLWINDOW
据我所知,唯一的功能优势是该窗口不会出现在Alt+ 中Tab。
我已经包含了一些比较 .NET 窗口样式的屏幕截图。这些都不是直接使用记事本+ +,还是其他非托管程序,但被微软命名的,所以...
的可能值FormBorderStyle
:
第一张图片是启用 Aero 的正在运行的程序的屏幕截图,第二张图片来自 Visual Studio 设计器视图(没有 Aero)。
单击全尺寸版本的图像
描述取自有关枚举的MSDN 文章FormBorderStyle
。
None
无边界。
FixedSingle
固定的单线边框。
Fixed3D
一个固定的三维边界。
FixedDialog
一个粗的、固定的对话框风格的边框。
Sizable
(默认)
可调整大小的边框。
FixedToolWindow
不可调整大小的工具窗口边框。工具窗口不会出现在任务栏或用户按下ALT+时出现的窗口中TAB。尽管指定的表单
FixedToolWindow
通常不会显示在任务栏中,但您还必须确保将该ShowInTaskbar
属性设置为false
,因为其默认值为true
。
SizableToolWindow
可调整大小的工具窗口边框。工具窗口不会出现在任务栏或用户按下ALT+时出现的窗口中TAB。
归档时间: |
|
查看次数: |
5035 次 |
最近记录: |