Это детализирует название этого стиля окна и параметры, доступные в .NET; см. отличный ответ @ Synetech о первоначальной цели этого стиля окна, причинах его использования для такого диалогового окна и реализации в неуправляемых программах Windows, таких как Notepad ++.
Окно имеет квадратные углы и выглядит так, потому что один из дизайнеров / программистов Notepad ++ решил использовать определенный стиль окна. Synetech подробно описывает преимущества этого стиля окна.
В .NET / Visual Studio это устанавливается в FormBorderStyle
свойстве System.Windows.Forms.Form
класса. В частности, это FixedToolWindow
. Возможные значения в System.Windows.Forms.FormBorderStyle
перечислении.
В ToolWindow
.NET со всеми значениями по умолчанию работают немного иначе, чем WS_EX_TOOLWINDOW
в Windows API, хотя они выглядят одинаково. При тестировании, я определил , что они действительно появляются на панели задач , и они действительно появляются на Alt+ Tabпереключателе задач , если свойство формы ShowInTaskbar
не установлено false
. ShowInTaskbar
влияет на видимость как на панели задач, так и на Alt+ Tabдля ToolWindow
s, но только на панель задач для других.
Между тем, также возможно удалить значки / свернуть / восстановить / развернуть кнопки из более распространенных стилей окна, хотя кажется невозможным добавить их в ToolWindow
s. Также можно скрыть обычные окна из панели задач.
WS_EX_TOOLWINDOW
Насколько я могу судить, единственным функциональным преимуществом является то, что окно не появляется в Alt+ Tab.
Я включил несколько скриншотов, сравнивающих стили окон .NET. Они не используются непосредственно Notepad ++ и другими неуправляемыми программами, но называются Microsoft, поэтому ...
Возможные значения FormBorderStyle
:
Первое изображение - это скриншот работающей программы с включенной Aero, второе - из конструктора Visual Studio (без Aero).
Нажмите на изображения для полной версии.
Описания взяты из статьи MSDN на FormBorderStyle
перечисление.
FixedSingle
Фиксированная однострочная граница.
Fixed3D
Фиксированная трехмерная граница.
FixedDialog
Толстая фиксированная граница в стиле диалога.
Sizable
(дефолт)
Изменяемая граница.
FixedToolWindow
Граница окна инструмента, размер которой не изменяется. Окно инструмента не появляется на панели задач или в окне, которое появляется, когда пользователь нажимает ALT+ TAB. Хотя FixedToolWindow
указанные формы обычно не отображаются на панели задач, вы также должны убедиться, что для ShowInTaskbar
свойства установлено значение false
, так как его значение по умолчанию равно true
.
SizableToolWindow
Изменяемая граница окна инструмента. Окно инструмента не появляется на панели задач или в окне, которое появляется, когда пользователь нажимает ALT+ TAB.